G+Smo  25.01.0
Geometry + Simulation Modules
 
Loading...
Searching...
No Matches
gsMaterialMatrixBase.hpp
Go to the documentation of this file.
1
16/*
17 To Do [updated 16-06-2020]:
18 - Make beta (compressible materials) and material parameters universal for all integration points over the thickness. So get them out of the _dPsi functions etc and move them into the integration loops as global variables.
19
20*/
21
22
23
24#pragma once
25
26// #include <gsIO/gsXml.h>
27// #include <gsKLShell/src/gsMaterialMatrixBase.h>
28// #include <gsKLShell/src/gsMaterialMatrixLinear.h>
29// #include <gsKLShell/src/gsMaterialMatrixLinear.h>
30// #include <gsKLShell/src/gsMaterialMatrixNonlinear.h>
31// #include <gsKLShell/src/gsMaterialMatrixTFT.h>
32
33namespace gismo
34{
35
36// template <class T>
37// std::ostream & gsMaterialMatrixBase<T>::print(std::ostream &os) const
38// {
39// // TFT
40// if (const gsMaterialMatrixTFT<2,T,true> * mm =
41// dynamic_cast<const gsMaterialMatrixTFT<2,T,true> *>( this ) )
42// return mm->print(os);
43// if (const gsMaterialMatrixTFT<2,T,false> * mm =
44// dynamic_cast<const gsMaterialMatrixTFT<2,T,false> *>( this ) )
45// return mm->print(os);
46// if (const gsMaterialMatrixTFT<3,T,true> * mm =
47// dynamic_cast<const gsMaterialMatrixTFT<3,T,true> *>( this ) )
48// return mm->print(os);
49// if (const gsMaterialMatrixTFT<3,T,false> * mm =
50// dynamic_cast<const gsMaterialMatrixTFT<3,T,false> *>( this ) )
51// return mm->print(os);
52
53// // Linear
54// if ( const gsMaterialMatrixLinear<2,T> * mm =
55// dynamic_cast<const gsMaterialMatrixLinear<2,T> *>( this ) )
56// return mm->print(os);
57// if ( const gsMaterialMatrixLinear<3,T> * mm =
58// dynamic_cast<const gsMaterialMatrixLinear<3,T> *>( this ) )
59// return mm->print(os);
60
61// // CompressibleNH2
62// if ( const gsMaterialMatrixNonlinear<2,T,11,true> * mm =
63// dynamic_cast<const gsMaterialMatrixNonlinear<2,T,11,true> *>( this ) )
64// return mm->print(os);
65// // CompressibleNH3
66// if ( const gsMaterialMatrixNonlinear<3,T,11,true> * mm =
67// dynamic_cast<const gsMaterialMatrixNonlinear<3,T,11,true> *>( this ) )
68// return mm->print(os);
69// // IncompressibleNH2
70// if ( const gsMaterialMatrixNonlinear<2,T,11,false> * mm =
71// dynamic_cast<const gsMaterialMatrixNonlinear<2,T,11,false> *>( this ) )
72// return mm->print(os);
73// // IncompressibleNH3
74// if ( const gsMaterialMatrixNonlinear<3,T,11,false> * mm =
75// dynamic_cast<const gsMaterialMatrixNonlinear<3,T,11,false> *>( this ) )
76// return mm->print(os);
77
78// // CompressibleNHe2
79// if ( const gsMaterialMatrixNonlinear<2,T,12,true> * mm =
80// dynamic_cast<const gsMaterialMatrixNonlinear<2,T,12,true> *>( this ) )
81// return mm->print(os);
82// // CompressibleNHe3
83// if ( const gsMaterialMatrixNonlinear<3,T,12,true> * mm =
84// dynamic_cast<const gsMaterialMatrixNonlinear<3,T,12,true> *>( this ) )
85// return mm->print(os);
86// // IncompressibleNHe2
87// if ( const gsMaterialMatrixNonlinear<2,T,12,false> * mm =
88// dynamic_cast<const gsMaterialMatrixNonlinear<2,T,12,false> *>( this ) )
89// return mm->print(os);
90// // IncompressibleNHe3
91// if ( const gsMaterialMatrixNonlinear<3,T,12,false> * mm =
92// dynamic_cast<const gsMaterialMatrixNonlinear<3,T,12,false> *>( this ) )
93// return mm->print(os);
94
95// // CompressibleMR2
96// if ( const gsMaterialMatrixNonlinear<2,T,13,true> * mm =
97// dynamic_cast<const gsMaterialMatrixNonlinear<2,T,13,true> *>( this ) )
98// return mm->print(os);
99// // CompressibleMR3
100// if ( const gsMaterialMatrixNonlinear<3,T,13,true> * mm =
101// dynamic_cast<const gsMaterialMatrixNonlinear<3,T,13,true> *>( this ) )
102// return mm->print(os);
103// // IncompressibleMR2
104// if ( const gsMaterialMatrixNonlinear<2,T,13,false> * mm =
105// dynamic_cast<const gsMaterialMatrixNonlinear<2,T,13,false> *>( this ) )
106// return mm->print(os);
107// // IncompressibleMR3
108// if ( const gsMaterialMatrixNonlinear<3,T,13,false> * mm =
109// dynamic_cast<const gsMaterialMatrixNonlinear<3,T,13,false> *>( this ) )
110// return mm->print(os);
111
112// // CompressibleOG2
113// if ( const gsMaterialMatrixNonlinear<2,T,34,true> * mm =
114// dynamic_cast<const gsMaterialMatrixNonlinear<2,T,34,true> *>( this ) )
115// return mm->print(os);
116// // CompressibleOG3
117// if ( const gsMaterialMatrixNonlinear<3,T,34,true> * mm =
118// dynamic_cast<const gsMaterialMatrixNonlinear<3,T,34,true> *>( this ) )
119// return mm->print(os);
120// // IncompressibleOG2
121// if ( const gsMaterialMatrixNonlinear<2,T,34,false> * mm =
122// dynamic_cast<const gsMaterialMatrixNonlinear<2,T,34,false> *>( this ) )
123// return mm->print(os);
124// // IncompressibleOG3
125// if ( const gsMaterialMatrixNonlinear<3,T,34,false> * mm =
126// dynamic_cast<const gsMaterialMatrixNonlinear<3,T,34,false> *>( this ) )
127// return mm->print(os);
128
129// os<<"gsMaterialMatrixBase (type not understood).\n";
130// return os;
131// }
132
133
134} // end namespace
The G+Smo namespace, containing all definitions for the library.