20 #ifndef _MBSIMHYDRAULICS_ENVIRONMENT_H_
21 #define _MBSIMHYDRAULICS_ENVIRONMENT_H_
23 #include "mbxmlutilshelper/dom.h"
24 #include "mbsim/environment.h"
26 namespace MBSimHydraulics {
28 const MBXMLUtils::NamespaceURI MBSIMHYDRAULICS(
"http://www.mbsim-env.de/MBSimHydraulics");
33 double rhoConstant, dVdT, rho0, T0, dRhodT;
35 double calcConstantSpecificMass(
double T) {
return rhoConstant; }
36 double calcVolumeDependingOnTemperature(
double T) {
return rho0*(1./(1.+dVdT*(T-T0))); }
37 double calcSpecificMassDependingOnTemperature(
double T) {
return rho0 + dRhodT*(T- T0 ); }
39 double nuConstant, Tm, Wm, T2, m;
41 double calcConstantKinematicViscosity(
double T) {
return nuConstant; }
42 double calcWalterUbbelohdeKinematicViscosity(
double T);
47 double E0, kappa, rho, nu;
49 static boost::scoped_ptr<HydraulicEnvironment> instance;
50 HydraulicEnvironment() :
Environment(), rhoConstant(0), dVdT(0), rho0(0), T0(0), dRhodT(0), nuConstant(0), Tm(0), Wm(0), T2(0), m(0), T(0), E0(0), kappa(0), rho(0), nu(0), pinf(0) {}
54 virtual void initializeUsingXML(xercesc::DOMElement *e);
55 virtual xercesc::DOMElement* writeXMLFile(xercesc::DOMNode *parent) {
return 0;}
56 virtual void initializeFluidData();
100 OilBulkModulus(
const std::string &name,
double E0,
double pinf,
double kappa,
double fracAir) {
102 factor[0]=E0*(1.+fracAir);
103 factor[1]=pow(pinf, 1./kappa) * fracAir * E0 / kappa;
104 factor[2]=-(1.+1./kappa);
111 double operator()(
const double &p);
113 std::string ownerName;
double getDynamicViscosity()
Definition: environment.h:92
double getTemperature()
Definition: environment.h:94
double getSpecificMass()
Definition: environment.h:84
void setSpecificMassDependingOnTemperature(double dRhodT_, double rho0_, double T0_)
Definition: environment.cc:108
void setEnvironmentPressure(double pinf_)
Definition: environment.h:79
double getKinematicViscosity()
Definition: environment.h:88
Definition: environment.h:98
void setConstantKinematicViscosity(double nu_)
Definition: environment.cc:115
double getEnvironmentPressure()
Definition: environment.h:81
void setKappa(double kappa_)
Definition: environment.h:61
double getKappa()
Definition: environment.h:90
void setTemperature(double T_)
Definition: environment.h:64
void setWalterUbbelohdeKinematicViscosity(double T1, double nu1, double T2, double nu2)
Definition: environment.cc:120
void setBasicBulkModulus(double E0_)
Definition: environment.h:59
void setVolumeDependingOnTemperature(double dVdT_, double rho0_, double T0_)
Definition: environment.cc:101
Definition: environment.h:31
void setConstantSpecificMass(double rho_)
Definition: environment.cc:96
double getBasicBulkModulus()
Definition: environment.h:86