Skip to content

Commit f5aa210

Browse files
dam example
1 parent b7c931b commit f5aa210

2 files changed

Lines changed: 37 additions & 32 deletions

File tree

kratos.gid/apps/Dam/examples/ThermoMechaDam2D.tcl

Lines changed: 36 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@ namespace eval ::Dam::examples::ThermoMechaDam2D {
55
}
66

77
proc ::Dam::examples::ThermoMechaDam2D::Init {args} {
8+
if {![Kratos::IsModelEmpty]} {
9+
set txt "We are going to draw the example geometry.\nDo you want to lose your previous work?"
10+
set retval [tk_messageBox -default ok -icon question -message $txt -type okcancel]
11+
if { $retval == "cancel" } { return }
12+
}
813

914
DrawGeometry
1015
AssignGroups
@@ -17,7 +22,7 @@ proc ::Dam::examples::ThermoMechaDam2D::Init {args} {
1722
}
1823

1924
proc ::Dam::examples::ThermoMechaDam2D::DrawGeometry {args} {
20-
25+
2126
Kratos::ResetModel
2227
GiD_Layers create Dam
2328
GiD_Layers edit to_use Dam
@@ -46,15 +51,15 @@ proc ::Dam::examples::ThermoMechaDam2D::DrawGeometry {args} {
4651
GiD_Layers create Soil
4752
GiD_Layers edit color Soil "#999900ff"
4853
GiD_Layers edit to_use Soil
49-
54+
5055
#~ # Geometry creation
5156
#~ ## Points ##
5257
set soil_coordinates [list -5 0 0 -5 -5 0 15 -5 0 15 0 0 ]
5358
set soilPoints [list ]
5459
foreach {x y z} $soil_coordinates {
5560
lappend soilPoints [GiD_Geometry create point append Soil $x $y $z]
5661
}
57-
62+
5863
## Lines ##
5964
set soilLines [list ]
6065
set initial [lindex $damPoints 0]
@@ -63,60 +68,60 @@ proc ::Dam::examples::ThermoMechaDam2D::DrawGeometry {args} {
6368
set initial $point
6469
}
6570
lappend soilLines [GiD_Geometry create line append stline Soil $initial [lindex $damPoints 1]]
66-
67-
71+
72+
6873
lappend soilLines 1
69-
74+
7075
## Surface ##
7176
GiD_Process Mescape Geometry Create NurbsSurface {*}$soilLines escape escape
72-
77+
7378
GiD_Process 'Zoom Frame
74-
79+
7580
}
7681

7782
proc ::Dam::examples::ThermoMechaDam2D::AssignGroups {args} {
78-
83+
7984
# Create the groups
8085
GiD_Groups create Dam
8186
GiD_Groups edit color Dam "#26d1a8ff"
8287
GiD_EntitiesGroups assign Dam surfaces 1
83-
88+
8489
GiD_Groups create Soil
8590
GiD_Groups edit color Soil "#e0210fff"
8691
GiD_EntitiesGroups assign Soil surfaces 2
87-
92+
8893
GiD_Groups create Displacement
8994
GiD_Groups edit color Displacement "#3b3b3bff"
9095
GiD_EntitiesGroups assign Displacement lines 7
91-
96+
9297
GiD_Groups create Initial
9398
GiD_Groups edit color Initial "#26d1a8ff"
9499
GiD_EntitiesGroups assign Initial surfaces {1 2}
95-
100+
96101
GiD_Groups create Bofang
97102
GiD_Groups edit color Bofang "#42eb71ff"
98103
GiD_EntitiesGroups assign Bofang lines {4 5}
99104

100105
GiD_Groups create Uniform
101106
GiD_Groups edit color Uniform "#3b3b3bff"
102-
GiD_EntitiesGroups assign Uniform lines {3 2 9}
103-
107+
GiD_EntitiesGroups assign Uniform lines {3 2 9}
108+
104109
GiD_Groups create Thermal_Parameters_1
105110
GiD_Groups edit color Initial "#26d1a8ff"
106111
GiD_EntitiesGroups assign Thermal_Parameters_1 surfaces 1
107-
112+
108113
GiD_Groups create Thermal_Parameters_2
109114
GiD_Groups edit color Initial "#26d1a8ff"
110115
GiD_EntitiesGroups assign Thermal_Parameters_2 surfaces 2
111-
116+
112117
GiD_Groups create Hydrostatic
113118
GiD_Groups edit color Hydrostatic "#26d1a8fe"
114119
GiD_EntitiesGroups assign Hydrostatic lines {4 5}
115120

116121
}
117122

118123
proc ::Dam::examples::ThermoMechaDam2D::AssignMeshSizes {args} {
119-
124+
120125
set dam_mesh_size 0.25
121126
GiD_Process Mescape Meshing AssignSizes Surfaces $dam_mesh_size [GiD_EntitiesGroups get Dam surfaces] escape escape
122127
GiD_Process Mescape Meshing AssignSizes Surfaces $dam_mesh_size [GiD_EntitiesGroups get Soil surfaces] escape escape
@@ -137,20 +142,20 @@ proc ::Dam::examples::ThermoMechaDam2D::TreeAssignation {args} {
137142
set damNode [customlib::AddConditionGroupOnXPath $damParts Dam]
138143
set props [list Element SmallDisplacementElement2D ConstitutiveLaw ThermalLinearElastic2DPlaneStrain Material "Concrete-Dam" DENSITY 2400 YOUNG_MODULUS 1.962e10 POISSON_RATIO 0.20 THERMAL_EXPANSION 1e-05]
139144
spdAux::SetValuesOnBaseNode $damNode $props
140-
145+
141146
#Soil Part
142147
set soilNode [customlib::AddConditionGroupOnXPath $damParts Soil]
143148
set props_soil [list Element SmallDisplacementElement2D ConstitutiveLaw ThermalLinearElastic2DPlaneStrain Material Soil DENSITY 3000 YOUNG_MODULUS 4.9e10 POISSON_RATIO 0.25 THERMAL_EXPANSION 1e-05]
144149
spdAux::SetValuesOnBaseNode $soilNode $props_soil
145150

146151
# Dirichlet Conditions
147-
152+
148153
# Displacements
149154
set damDirichletConditions [spdAux::getRoute "DamNodalConditions"]
150155
set displacement "$damDirichletConditions/condition\[@n='DISPLACEMENT'\]"
151156
set displacemnetnode [customlib::AddConditionGroupOnXPath $displacement Displacement]
152-
153-
# Surface Temperature
157+
158+
# Surface Temperature
154159
set initial "$damDirichletConditions/condition\[@n='INITIALTEMPERATURE'\]"
155160
set initialnode [customlib::AddConditionGroupOnXPath $initial Initial]
156161
set props_initial [list is_fixed 0 value 7.5 ]
@@ -161,36 +166,36 @@ proc ::Dam::examples::ThermoMechaDam2D::TreeAssignation {args} {
161166
set bofangnode [customlib::AddConditionGroupOnXPath $bofang Bofang]
162167
set props_bofang [list is_fixed 1 Gravity_Direction Y Reservoir_Bottom_Coordinate_in_Gravity_Direction 0.0 Surface_Temp 15.19 Bottom_Temp 9.35 Height_Dam 30.0 Temperature_Amplitude 6.51 Day_Ambient_Temp 201 Water_level 20.0 Month 7 ]
163168
spdAux::SetValuesOnBaseNode $bofangnode $props_bofang
164-
169+
165170
# Uniform Temperature
166171
set uniform "$damDirichletConditions/condition\[@n='INITIALTEMPERATURE'\]"
167172
set uniformnode [customlib::AddConditionGroupOnXPath $uniform Uniform]
168173
set props_uniform [list is_fixed 1 value 10.0 ]
169174
spdAux::SetValuesOnBaseNode $uniformnode $props_uniform
170-
171-
175+
176+
172177
# Thermal Load Conditions
173-
178+
174179
# Thermal Parameters 1
175180
set damThermalLoadConditions [spdAux::getRoute "DamThermalLoads"]
176181
set thermalparameter "$damThermalLoadConditions/condition\[@n='ThermalParameters2D'\]"
177182
set thermalparameternode1 [customlib::AddConditionGroupOnXPath $thermalparameter Thermal_Parameters_1]
178-
183+
179184
# Thermal Parameters 2
180185
set thermalparameternode2 [customlib::AddConditionGroupOnXPath $thermalparameter Thermal_Parameters_2]
181186
set props_thermal_2 [list ThermalDensity 3000 ]
182187
spdAux::SetValuesOnBaseNode $thermalparameternode2 $props_thermal_2
183-
188+
184189
# Load Conditions
185-
190+
186191
# Hydrostatic Load
187192
set damLoadConditions [spdAux::getRoute "DamLoads"]
188193
set hydro "$damLoadConditions/condition\[@n='HydroLinePressure2D'\]"
189194
set hydronode [customlib::AddConditionGroupOnXPath $hydro Hydrostatic]
190195
set props_hydro [list Modify 0 Gravity_Direction Y Reservoir_Bottom_Coordinate_in_Gravity_Direction 0.0 Spe_weight 10000 Water_level 20.0]
191196
spdAux::SetValuesOnBaseNode $hydronode $props_hydro
192-
193-
197+
198+
194199
# Solution
195200
spdAux::SetValueOnTreeItem v "Days" DamTimeScale
196201

kratos.gid/apps/Dam/xml/Processes.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<inputs>
99
<parameter n="is_fixed" pn="Imposed" type="vector" vectorType="bool" v="1,1,1"/>
1010
<parameter n="value" pn="Value" type="vector" v="0.0,0.0,0.0"/>
11-
<parameter n="Value_Table" pn="Value table filename" type="vector" vectorType="tablefile" v=""/>
11+
<parameter n="Value_Table" pn="Value table filename" type="tablefile" v=""/>
1212
</inputs>
1313
</Process>
1414

0 commit comments

Comments
 (0)