45 #include <lifev/core/filter/GetPot.hpp> 46 #include <lifev/core/LifeV.hpp> 47 #include <lifev/core/util/StringData.hpp> 48 #include <lifev/core/util/StringUtility.hpp> 49 #include <lifev/core/fem/TimeData.hpp> 50 #include <lifev/core/fem/TimeAdvanceData.hpp> 51 #include <boost/shared_ptr.hpp> 107 typedef std::shared_ptr<time_Type> timePtr_Type;
110 typedef std::shared_ptr<timeAdvance_Type> timeAdvancePtr_Type;
125 OseenData (
const OseenData& oseenData );
128 virtual ~OseenData() {}
140 OseenData& operator= (
const OseenData& oseenData );
153 void setup (
const GetPot& dataFile,
const std::string& section =
"fluid" );
156 void showMe ( std::ostream& output = std::cout )
const;
169 void setTimeData (
const timePtr_Type timeData )
178 void setTimeAdvanceData (
const timeAdvancePtr_Type timeAdvanceData )
180 M_timeAdvance = timeAdvanceData;
188 void setDensity (
const Real& density,
const UInt nfluid = 0 )
190 ASSERT (nfluid < M_fluidNumber,
"Undeclared fluid");
191 M_density[nfluid] = density;
199 void setViscosity (
const Real& viscosity,
const UInt nfluid = 0 )
201 ASSERT (nfluid < M_fluidNumber,
"Undeclared fluid");
202 M_viscosity[nfluid] = viscosity;
210 void setStokes (
const bool stokes )
219 void setSemiImplicit (
const bool SI )
222 if ( M_semiImplicit )
224 setUseShapeDerivatives (
false);
232 void setUseShapeDerivatives (
const bool SD )
234 M_shapeDerivatives = SD;
248 timePtr_Type dataTime()
const 257 timeAdvancePtr_Type dataTimeAdvance()
const 259 return M_timeAdvance;
266 const UInt& fluidNumber()
const 268 return M_fluidNumber;
278 ASSERT (n < M_fluidNumber,
"Undeclared fluid");
289 ASSERT (n < M_fluidNumber,
"Undeclared fluid");
290 return M_viscosity[n];
297 std::string uOrder()
const 306 std::string pOrder()
const 351 NSStabilization stabilization()
const 361 bool isStokes()
const 370 bool isSemiImplicit()
const 372 return M_semiImplicit;
380 bool useShapeDerivatives()
const 382 return M_shapeDerivatives;
391 bool domainVelImplicit()
const 393 return M_domainVelImplicit;
402 bool convectiveImplicit()
const 404 return M_convectiveImplicit;
411 UInt computeMeanValuesPerSection()
const 413 return M_computeMeanValuesPerSection;
422 return M_NbZSections;
431 return M_ToleranceSection;
440 return M_XSectionFrontier;
449 return M_ZSectionInit;
458 return M_ZSectionFinal;
467 return M_NbPolygonEdges;
474 bool conservativeFormulation()
const 476 return M_conservativeFormulation;
485 timeAdvancePtr_Type M_timeAdvance;
494 std::vector<Real> M_density;
497 std::vector<Real> M_viscosity;
506 std::string M_uOrder;
509 std::string M_pOrder;
538 NSStabilization M_stabMethod;
546 bool M_shapeDerivatives;
547 bool M_domainVelImplicit;
548 bool M_convectiveImplicit;
549 UInt M_computeMeanValuesPerSection;
558 bool M_conservativeFormulation;
TimeAdvanceData - Class for handling temporal discretization.
void updateInverseJacobian(const UInt &iQuadPt)
double Real
Generic real data.
uint32_type UInt
generic unsigned integer (used mainly for addressing)
TimeData - Class for handling temporal discretization.