37 #ifndef VENANTKIRCHHOFFVISCOELASTICDATA_H 38 #define VENANTKIRCHHOFFVISCOELASTICDATA_H 1
45 #include <boost/shared_ptr.hpp> 48 #include <lifev/core/filter/GetPot.hpp> 49 #include <lifev/core/LifeV.hpp> 50 #include <lifev/core/fem/TimeData.hpp> 51 #include <lifev/core/fem/TimeAdvanceData.hpp> 59 class VenantKirchhoffViscoelasticData
65 typedef TimeData time_Type;
66 typedef std::shared_ptr<time_Type> timePtr_Type;
68 typedef TimeAdvanceData timeAdvance_Type;
69 typedef std::shared_ptr<timeAdvance_Type> timeAdvancePtr_Type;
71 typedef std::map<UInt, Real> MaterialContainer_Type;
72 typedef MaterialContainer_Type::const_iterator MaterialContainer_ConstIterator;
77 VenantKirchhoffViscoelasticData();
78 VenantKirchhoffViscoelasticData (
const VenantKirchhoffViscoelasticData& VenantKirchhoffViscoelasticData);
87 VenantKirchhoffViscoelasticData& operator= (
const VenantKirchhoffViscoelasticData& VenantKirchhoffViscoelasticData );
98 void setup (
const GetPot& dataFile,
const std::string& section =
"solid" );
101 void showMe ( std::ostream& output = std::cout )
const;
112 void setTimeData (
const timePtr_Type timeData )
121 void setTimeAdvanceData (
const timeAdvancePtr_Type timeAdvanceData )
123 M_timeAdvance = timeAdvanceData;
130 void setDensity (
const Real& density );
136 void setGamma (
const Real& gamma );
138 void setGamma (
const Real& gamma,
const UInt& material );
144 void setBeta (
const Real& beta);
146 void setBeta (
const Real& beta,
const UInt& material);
153 void setThickness (
const Real& thickness );
160 void setPoisson (
const Real& poisson,
const UInt& material = 1 );
167 void setYoung (
const Real& young,
const UInt& material = 1 );
178 timePtr_Type dataTime()
const 187 timeAdvancePtr_Type dataTimeAdvance()
const 189 return M_timeAdvance;
196 const Real& rho()
const;
202 const Real& thickness()
const;
209 Real poisson (
const UInt& material = 1 )
const;
216 Real young (
const UInt& material = 1 )
const;
223 Real lambda (
const UInt& material = 1 )
const;
230 Real mu (
const UInt& material = 1 )
const;
236 const Real& gamma (
const UInt& material = 1 )
const;
241 const Real& beta (
const UInt& material = 1 )
const;
247 const std::string& order()
const;
253 const Real& factor()
const;
259 const UInt& verbose()
const;
275 timeAdvancePtr_Type M_timeAdvance;
286 MaterialContainer_Type M_poisson;
289 MaterialContainer_Type M_young;
292 MaterialContainer_Type M_gamma;
295 MaterialContainer_Type M_beta;
double Real
Generic real data.
uint32_type UInt
generic unsigned integer (used mainly for addressing)