@@ -59,16 +59,15 @@ proc ::GeoMechanics::examples::FirstExample::AssignGroups {args} {
5959
6060 GiD_Groups create Clay_after_excavation
6161 GiD_EntitiesGroups assign Clay_after_excavation surfaces 2
62+ GiD_Groups edit color Clay_after_excavation " #995e05"
6263
6364 GiD_Groups create Excavated
6465 GiD_EntitiesGroups assign Excavated surfaces 1
66+ GiD_Groups edit color Excavated " #6e4aff"
6567
6668 GiD_Groups create Load
6769 GiD_EntitiesGroups assign Load lines 8
6870
69- GiD_Groups create Body
70- GiD_EntitiesGroups assign Body surfaces {1 2}
71-
7271 GiD_Groups create Hydrostatic_load_in_sloot
7372 GiD_EntitiesGroups assign Hydrostatic_load_in_sloot lines {4 5 6}
7473
@@ -104,7 +103,10 @@ proc ::GeoMechanics::examples::FirstExample::TreeAssignation {args} {
104103
105104 # Parts
106105 set parts [spdAux::getRoute " GEOMParts" $stage ]/condition\[ @n='Parts_GeoSteadyState'\]
107- set body_node [customlib::AddConditionGroupOnXPath $parts Body]
106+ set body_node [customlib::AddConditionGroupOnXPath $parts Clay_after_excavation]
107+ set props [list YOUNG_MODULUS 1000 POISSON_RATIO 0.3]
108+ spdAux::SetValuesOnBaseNode $body_node $props
109+ set body_node [customlib::AddConditionGroupOnXPath $parts Excavated_clay]
108110 set props [list YOUNG_MODULUS 1000 POISSON_RATIO 0.3]
109111 spdAux::SetValuesOnBaseNode $body_node $props
110112
@@ -117,8 +119,6 @@ proc ::GeoMechanics::examples::FirstExample::TreeAssignation {args} {
117119 GiD_Groups edit parent Total Bottom
118120 spdAux::AddIntervalGroup Bottom " Bottom//Total"
119121 GiD_Groups edit state " Bottom//Total" hidden
120- GiD_Groups edit color " Bottom" " #25ff48"
121- GiD_Groups edit color " Bottom//Total" " #25ff48"
122122 set displacement [spdAux::getRoute " GEOMNodalConditions" $stage ]/condition\[ @n='DISPLACEMENT'\]
123123 set displacement_node [customlib::AddConditionGroupOnXPath $displacement " Bottom//Total" ]
124124 $displacement_node setAttribute ov line
@@ -130,8 +130,6 @@ proc ::GeoMechanics::examples::FirstExample::TreeAssignation {args} {
130130 GiD_Groups edit parent Total Side_sliders
131131 spdAux::AddIntervalGroup Side_sliders " Side_sliders//Total"
132132 GiD_Groups edit state " Side_sliders//Total" hidden
133- GiD_Groups edit color " Side_sliders" " #ff2548"
134- GiD_Groups edit color " Side_sliders//Total" " #ff2548"
135133 set displacement [spdAux::getRoute " GEOMNodalConditions" $stage ]/condition\[ @n='DISPLACEMENT'\]
136134 set displacement_node [customlib::AddConditionGroupOnXPath $displacement " Side_sliders//Total" ]
137135 $displacement_node setAttribute ov line
@@ -143,34 +141,79 @@ proc ::GeoMechanics::examples::FirstExample::TreeAssignation {args} {
143141 GiD_Groups edit parent Total Body
144142 spdAux::AddIntervalGroup Body " Body//Total"
145143 GiD_Groups edit state " Body//Total" hidden
146- GiD_Groups edit color " Body" " #ff2548"
147- GiD_Groups edit color " Body//Total" " #ff2548"
148144 set gravity [spdAux::getRoute " GEOMLoads" $stage ]/condition\[ @n='SelfWeight2D'\]
149145 set gravity_node [customlib::AddConditionGroupOnXPath $gravity " Body//Total" ]
150146 $gravity_node setAttribute ov surface
151147 set props [list modulus 9.81 value_direction_Y -1.0 Interval Total]
152148 spdAux::SetValuesOnBaseNode $gravity_node $props
153149
150+
151+ # Stage 2
152+ ::GeoMechanics::xml::NewStage " Stage 2"
153+ set stage [$root selectNodes " .//container\[ @n='stages'\] /blockdata\[ @name = 'Stage 2'\] " ]
154+
154155 # Top Pressure
155156 GiD_Groups clone Load Total
156157 GiD_Groups edit parent Total Load
157- spdAux::AddIntervalGroup Body " Load//Total"
158+ spdAux::AddIntervalGroup Load " Load//Total"
158159 GiD_Groups edit state " Load//Total" hidden
159- GiD_Groups edit color " Load" " #ff2548"
160- GiD_Groups edit color " Load//Total" " #ff2548"
161160 set pressure [spdAux::getRoute " GEOMLoads" $stage ]/condition\[ @n='LinePressure2D'\]
162161 set pressure_node [customlib::AddConditionGroupOnXPath $pressure " Load//Total" ]
163162 $pressure_node setAttribute ov line
164163 set props [list value 5000 Interval Total]
165164 spdAux::SetValuesOnBaseNode $pressure_node $props
166165
166+ # Stage 3
167+ ::GeoMechanics::xml::NewStage " Stage 3"
168+ set stage [$root selectNodes " .//container\[ @n='stages'\] /blockdata\[ @name = 'Stage 3'\] " ]
169+
170+ # Remove body to split into excavated and clay
171+ gid_groups_conds::delete " .//container\[ @n='stages'\] /blockdata\[ @name = 'Stage 3'\] /container\[ @n = 'Parts']/condition/group"
172+ gid_groups_conds::delete " .//container\[ @n='stages'\] /blockdata\[ @name = 'Stage 3'\] /container\[ @n = 'Loads']/condition\[ @n='SelfWeight2D'\] /group"
167173
174+ # Parts
175+ set parts [spdAux::getRoute " GEOMParts" $stage ]/condition\[ @n='Parts_GeoSteadyState'\]
176+ set body_node [customlib::AddConditionGroupOnXPath $parts Clay_after_excavation]
177+ set props [list YOUNG_MODULUS 1000 POISSON_RATIO 0.3]
178+ spdAux::SetValuesOnBaseNode $body_node $props
168179
180+ set parts [spdAux::getRoute " GEOMParts" $stage ]/condition\[ @n='Parts_GeoSteadyState'\]
181+ set body_node [customlib::AddConditionGroupOnXPath $parts Excavated]
182+ set props [list YOUNG_MODULUS 1000 POISSON_RATIO 0.3]
183+ spdAux::SetValuesOnBaseNode $body_node $props
169184
170- # Prepare stages
171- ::GeoMechanics::xml::NewStage " Stage 2"
172- ::GeoMechanics::xml::NewStage " Stage 3"
185+
186+ # Gravity
187+ GiD_Groups clone Clay_after_excavation Total
188+ GiD_Groups edit parent Total Clay_after_excavation
189+ spdAux::AddIntervalGroup Body " Clay_after_excavation//Total"
190+ GiD_Groups edit state " Clay_after_excavation//Total" hidden
191+ set gravity [spdAux::getRoute " GEOMLoads" $stage ]/condition\[ @n='SelfWeight2D'\]
192+ set gravity_node [customlib::AddConditionGroupOnXPath $gravity " Clay_after_excavation//Total" ]
193+ $gravity_node setAttribute ov surface
194+ set props [list modulus 9.81 value_direction_Y -1.0 Interval Total]
195+ spdAux::SetValuesOnBaseNode $gravity_node $props
196+
197+ GiD_Groups clone Excavated Total
198+ GiD_Groups edit parent Total Excavated
199+ spdAux::AddIntervalGroup Body " Excavated//Total"
200+ GiD_Groups edit state " Excavated//Total" hidden
201+ set gravity [spdAux::getRoute " GEOMLoads" $stage ]/condition\[ @n='SelfWeight2D'\]
202+ set gravity_node [customlib::AddConditionGroupOnXPath $gravity " Excavated//Total" ]
203+ $gravity_node setAttribute ov surface
204+ set props [list modulus 9.81 value_direction_Y -1.0 Interval Total]
205+ spdAux::SetValuesOnBaseNode $gravity_node $props
206+
207+
208+ # Stage 4
173209 ::GeoMechanics::xml::NewStage " Stage 4"
210+ set stage [$root selectNodes " .//container\[ @n='stages'\] /blockdata\[ @name = 'Stage 4'\] " ]
211+
212+ # Remove excavated
213+ gid_groups_conds::delete " .//container\[ @n='stages'\] /blockdata\[ @name = 'Stage 4'\] /container\[ @n = 'Parts']/condition/group\[ @n='Excavated'\] "
214+ gid_groups_conds::delete " .//container\[ @n='stages'\] /blockdata\[ @name = 'Stage 4'\] /container\[ @n = 'Loads']/condition\[ @n='SelfWeight2D'\] /group\[ @n='Excavated//Total'\] "
215+
216+
174217 spdAux::parseRoutes
175218
176219 ::GeoMechanics::PrevStage
0 commit comments