#ifndef INCLUDE_NASTGEOMETRY2DSTEP_H #define INCLUDE_NASTGEOMETRY2DSTEP_H //----------------------------------------------------------------------------- // NastGeometry2dStep.h //----------------------------------------------------------------------------- // // Copyright (C) 1998 Technische Universitaet Muenchen, Germany // written by Bernhard Brueck // // This file is part of Nast++ // //----------------------------------------------------------------------------- // Implementation einer einfachen Geometriebeschreibung fuer eine Stroemung // ueber eine Stufe //----------------------------------------------------------------------------- // Aenderungen: // #include "NastConfig.h" #include "NastGeometry2d.h" #include "NastBox2d.h" class CNastGeometry2dStep : public CNastGeometry2d { public: //------------------------------------------------------------------------- // Konstruktor + Destruktor //------------------------------------------------------------------------- // Konstruktor unter der Angabe der Groesse des Gebiets, und der Einstroem- // bedingung // CNastGeometry2dStep( const CNastBox2d &boundingBox, double velocity ); ~CNastGeometry2dStep(); //------------------------------------------------------------------------- // Memberfunktionen //------------------------------------------------------------------------- virtual CNastBox2d boundingBox() const; virtual void setCells( CNastCellField2d &cellField ) const; virtual CNastBoundaryPoint2d boundaryPoint( const CNastPoint2d &pnt, const CNastVector2d &direction ) const; virtual bool isMovable() const; virtual void move( const CNastNavierStokes &solution ); virtual double maxTimeStep() const; //------------------------------------------------------------------------- // Debug //------------------------------------------------------------------------- // debugInfo gibt Information ueber den Zustand des Objekts aus // assertValid testet das Objekt auf Integritaet // virtual void debugDump( CNastDumpContext &dumpContext ) const; virtual void assertValid() const; private: // nicht impl. CNastGeometry2dStep( const CNastGeometry2dStep &other); const CNastGeometry2dStep& operator=( const CNastGeometry2dStep &other ); //------------------------------------------------------------------------- // Membervariablen //------------------------------------------------------------------------- CNastBox2d m_box; // box um die Geometrie herum CNastBox2d m_boxStep; // die Stufe im Fluid double m_velocity; }; #endif // INCLUDE_NASTGEOMETRY2DSTEP_H