C++ main module for emicrom Package  1.0
EMM_HyperElasticMatter.h
Go to the documentation of this file.
1 #ifndef EMM_HyperElasticMatter_H
2 #define EMM_HyperElasticMatter_H
3 
5 
42 
44  // ATTRIBUTES
45 public:
46 
47 
48 
49 private:
50 
51 
52 
53 
54 
55 
56 protected:
57  // METHODS
58 
59  // CONSTRUCTORS
60 
64 
65 
66 
67  // DESTRUCTORS
68 
69 
72  virtual ~EMM_HyperElasticMatter(void);
73 
74 
75 public:
76  // NEW method
77 
80  inline static SP::EMM_HyperElasticMatter New() {
81  SP::EMM_HyperElasticMatter p(new EMM_HyperElasticMatter(),EMM_HyperElasticMatter::Delete());
82  p->setThis(p);
83  return p;
84  };
85 
89  virtual void copy(const EMM_Matter& mat) {
91  }
92 
93 
94 
95  // SET methods
96 
101  void setYoungAndPoissonConstants(const tReal& E,const tReal& nu);
102 
116  void setLaneAndCoulombConstants(const tReal& lambda,const tReal& mu);
117 
118 
119 
120  // GET methods
125  void getLaneAndCoulombConstants(tReal& lambda,tReal& mu) const;
126 
131  void getYoungAndPoissonConstants(tReal& E,tReal& nu) const ;
132 
133 public:
137  virtual tString toString() const;
138 
139 
140 };
141 
142 #endif
void getYoungAndPoissonConstants(tReal &E, tReal &nu) const
get the young and poisson constants
Definition: EMM_HyperElasticMatter.cpp:39
void setYoungAndPoissonConstants(const tReal &E, const tReal &nu)
set the elastic tensor thanks to Young(s module and Poisson's ratio
Definition: EMM_HyperElasticMatter.cpp:11
virtual void copy(const EMM_Matter &mat)
copy the matter
Definition: EMM_Matter.cpp:104
DEFINE_SVPTR(EMM_HyperElasticMatter)
DEFINE_SPTR(EMM_HyperElasticMatter)
This class describes a matter for E-MicroM package.
Definition: EMM_Matter.h:34
This class describes an hyper elastic matter for E-MicroM package.
Definition: EMM_HyperElasticMatter.h:41
SP_OBJECT(EMM_HyperElasticMatter)
virtual void copy(const EMM_Matter &mat)
copy the matter
Definition: EMM_HyperElasticMatter.h:89
void setLaneAndCoulombConstants(const tReal &lambda, const tReal &mu)
set the elastic tensor thanks to Lane and Coulomb constants
Definition: EMM_HyperElasticMatter.cpp:19
static SP::EMM_HyperElasticMatter New()
create a material object
Definition: EMM_HyperElasticMatter.h:80
virtual ~EMM_HyperElasticMatter(void)
destroy
Definition: EMM_HyperElasticMatter.cpp:6
#define tString
Definition: types.h:135
This class describes an magnetostrive matter for E-MicroM package.
Definition: EMM_MagnetostrictiveMatter.h:31
EMM_HyperElasticMatter(void)
create
Definition: EMM_HyperElasticMatter.cpp:3
#define tReal
Definition: types.h:118
void getLaneAndCoulombConstants(tReal &lambda, tReal &mu) const
get the Lane and Coulomb constants
Definition: EMM_HyperElasticMatter.cpp:35
virtual tString toString() const
return the class information into a string
Definition: EMM_HyperElasticMatter.cpp:49
class Free introduced for deleting a smart pointer
Definition: CORE_Object.h:141