Skip to content

Commit 33036bd

Browse files
[Dam] Add initial joint width to joints and fix problem with tables (#984)
* Add INITAL_JOINT_WIDTH * Set INITIAL_JOINT_WIDTH to 1 * Translate comments * Fix problem with TableDict * Change name of Bofang's Law variable (Day maximum temperature) * Set initial joint width to 0
1 parent c1daa19 commit 33036bd

4 files changed

Lines changed: 37 additions & 29 deletions

File tree

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ proc ::Dam::examples::ThermoMechaDam2D::TreeAssignation {args} {
164164
# Bofang Temperature
165165
set bofang_temperature "$damDirichletConditions/condition\[@n='BOFANGTEMPERATURE'\]"
166166
set bofang_temperature_node [customlib::AddConditionGroupOnXPath $bofang_temperature Water]
167-
set props_bofang_temperature [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 ]
167+
set props_bofang_temperature [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_Max_Temp 201 Water_level 20.0 Month 7 ]
168168
spdAux::SetValuesOnBaseNode $bofang_temperature_node $props_bofang_temperature
169169

170170
# Uniform Temperature

kratos.gid/apps/Dam/write/write.tcl

Lines changed: 28 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,12 @@ namespace eval ::Dam::write {
88

99
variable ThermalSubModelPartDict
1010

11-
# Variable global definida al principio y utilizada para transferir entre procesos el número de tablas existentes
11+
# Global variable defined at the beginning and used to transfer between processes the number of existing tables
1212
variable number_tables
1313
}
1414

1515
proc ::Dam::write::Init { } {
16-
# Namespace variables inicialization
16+
# Namespace variables initialization
1717
variable ConditionsDictGroupIterators
1818
variable NodalConditionsGroup
1919
set ConditionsDictGroupIterators [dict create]
@@ -67,21 +67,28 @@ proc ::Dam::write::UpdateMaterials { } {
6767
set matdict [write::getMatDict]
6868
foreach {mat props} $matdict {
6969
set constlaw [dict get $props ConstitutiveLaw]
70-
# Modificar la ley constitutiva
70+
# Modify constitutive law
7171
set newconstlaw $constlaw
72+
if {$constlaw eq "ElasticCohesive3DLaw"} {
73+
dict set matdict $mat INITIAL_JOINT_WIDTH 0.0
74+
}
7275
if {$constlaw eq "ElasticCohesive2DPlaneStrain"} {
76+
dict set matdict $mat INITIAL_JOINT_WIDTH 0.0
7377
dict set matdict $mat THICKNESS 1.0
7478
set newconstlaw "ElasticCohesive2DLaw"
7579
}
7680
if {$constlaw eq "ElasticCohesive2DPlaneStress"} {
81+
dict set matdict $mat INITIAL_JOINT_WIDTH 0.0
7782
dict set matdict $mat THICKNESS 1.0
7883
set newconstlaw "ElasticCohesive2DLaw"
7984
}
8085
if {$constlaw eq "IsotropicDamageCohesive2DPlaneStress"} {
86+
dict set matdict $mat INITIAL_JOINT_WIDTH 0.0
8187
dict set matdict $mat THICKNESS 1.0
8288
set newconstlaw "IsotropicDamageCohesive2DLaw"
8389
}
8490
if {$constlaw eq "IsotropicDamageCohesive2DPlaneStrain"} {
91+
dict set matdict $mat INITIAL_JOINT_WIDTH 0.0
8592
dict set matdict $mat THICKNESS 1.0
8693
set newconstlaw "IsotropicDamageCohesive2DLaw"
8794
}
@@ -116,10 +123,10 @@ proc ::Dam::write::writeMeshes { } {
116123
Dam::write::ThermalSubModelPart
117124
}
118125

119-
# Solo Malla , no en conditions
126+
# Only mesh, not in the condition
120127
writeNodalConditions [GetAttribute nodal_conditions_un]
121128

122-
# A Condition y a meshes-> salvo lo que no tenga topologia
129+
# To conditions and to meshes-> unless it does not have a topology
123130
writeLoads [GetAttribute conditions_un]
124131
writeLoads [GetAttribute thermal_conditions_un]
125132
writeLoads [GetAttribute nodal_conditions_un]
@@ -214,6 +221,7 @@ proc ::Dam::write::writeTables { } {
214221
set printed_tables [list ]
215222
foreach table [GetPrinTables] {
216223
lassign $table tableid fileid condid groupid valueid
224+
set groupid [write::GetWriteGroupName $groupid]
217225
dict set TableDict $condid $groupid $valueid tableid $tableid
218226
dict set TableDict $condid $groupid $valueid fileid $fileid
219227
if {$tableid ni $printed_tables} {
@@ -258,8 +266,8 @@ proc ::Dam::write::GetPrinTables {} {
258266

259267
set root [customlib::GetBaseRoot]
260268
if {$Kratos::kratos_private(UseFiles) eq 1} {FileSelector::CopyFilesIntoModel [file join [GiD_Info project ModelName] ".gid"]}
261-
set listaTablas [list ]
262-
set listaFiles [list ]
269+
set tableid_list [list ]
270+
set files_list [list ]
263271
set num 0
264272
set origins [list [GetAttribute conditions_un] [GetAttribute thermal_conditions_un] [GetAttribute nodal_conditions_un] "DamSelfweight"]
265273
foreach unique_name $origins {
@@ -271,31 +279,31 @@ proc ::Dam::write::GetPrinTables {} {
271279
set condid [get_domnode_attribute [[$node parent] parent] n]
272280
# W $fileid
273281
if {$fileid ni [list "" "- No file" $::spdAux::no_file_string]} {
274-
if {$fileid ni $listaFiles} {
275-
lappend listaFiles $fileid
282+
if {$fileid ni $files_list} {
283+
lappend files_list $fileid
276284
incr num
277285
set tableid $num
278286
} else {
279287
set tableid 0
280-
foreach table $listaTablas {
288+
foreach table $tableid_list {
281289
lassign $table tableid2 fileid2 condid2 groupid2 valueid2
282290
if {$fileid2 eq $fileid} {set tableid $tableid2; break}
283291
}
284292
}
285293
#W "$tableid $fileid $condid $groupid $valueid"
286-
lappend listaTablas [list $tableid $fileid $condid $groupid $valueid]
294+
lappend tableid_list [list $tableid $fileid $condid $groupid $valueid]
287295
}
288296
}
289297
}
290-
return $listaTablas
298+
return $tableid_list
291299
}
292300

293301
proc ::Dam::write::GetPrinTables_dev { } {
294302

295303
set root [customlib::GetBaseRoot]
296304
if {$Kratos::kratos_private(UseFiles) eq 1} {FileSelector::CopyFilesIntoModel [file join [GiD_Info project ModelName] ".gid"]}
297-
set listaTablas2 [list ]
298-
set listaFiles2 [list ]
305+
set tableid_list2 [list ]
306+
set files_list2 [list ]
299307
set num [llength [GetPrinTables]]
300308

301309
set path_devices "[spdAux::getRoute DamTempDevice]/blockdata\[@n='device'\]"
@@ -308,22 +316,22 @@ proc ::Dam::write::GetPrinTables_dev { } {
308316
set fileid [write::getValueByNode $node_table_device]
309317

310318
if {$fileid ni [list "" "- No file" $::spdAux::no_file_string]} {
311-
if {$fileid ni $listaFiles2} {
312-
lappend listaFiles2 $fileid
319+
if {$fileid ni $files_list2} {
320+
lappend files_list2 $fileid
313321
incr num
314322
set tableid $num
315323
} else {
316324
set tableid 0
317-
foreach table $listaTablas2 {
325+
foreach table $tableid_list2 {
318326
lassign $table tableid2 fileid2
319327
if {$fileid2 eq $fileid} {set tableid $tableid2; break}
320328
}
321329
}
322330
#W "$tableid $fileid $condid $groupid $valueid"
323-
lappend listaTablas2 [list $tableid $fileid]
331+
lappend tableid_list2 [list $tableid $fileid]
324332
}
325333
}
326-
return $listaTablas2
334+
return $tableid_list2
327335
}
328336

329337
#-------------------------------------------------------------------------------
@@ -359,7 +367,7 @@ proc ::Dam::write::writeThermalElements {} {
359367
Dam::write::writeThermalConnectivities [lindex $ThermalGroups $i] hexahedra EulerianConvDiff3D8N "Dam::write::Hexahedron3D8Connectivities" ElementId ElementList
360368

361369
dict set ThermalSubModelPartDict [lindex $ThermalGroups $i] Elements $ElementList
362-
# Añado guiones bajos donde hay espacios en los nombres de los submodelparts.
370+
# Replace spaces with underscoresn the submodelpart names
363371
set old_name_SubModelPart "Thermal_[lindex $ThermalGroups $i]"
364372
set new_name_SubModelPart [string map {" " "_"} $old_name_SubModelPart]
365373
dict set ThermalSubModelPartDict [lindex $ThermalGroups $i] SubModelPartName $new_name_SubModelPart

kratos.gid/apps/Dam/write/writeProjectParameters.tcl

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -376,7 +376,7 @@ proc ::Dam::write::DefinitionDomains { } {
376376
# This process assign a number for the different tables instead of names (this is for matching with .mdpa)
377377
proc ::Dam::write::ChangeFileNameforTableid { processList } {
378378

379-
# Variable global definida al principio y utilizada para transferir entre procesos el número de tablas existentes
379+
# Global variable defined at the beginning and used to transfer between processes the number of existing tables
380380
variable number_tables
381381

382382
set returnList [list ]
@@ -862,12 +862,12 @@ proc ::Dam::write::DevicesOutput { } {
862862

863863
proc ::Dam::write::TemperaturebyDevices { } {
864864

865-
# Variable global definida al principio y utilizada para transferir entre procesos el número de tablas existentes
865+
# Global variable defined at the beginning and used to transfer between processes the number of existing tables
866866
variable number_tables
867867

868868
set device_temp_state [write::getValue DamTemperatureState]
869869
set lista [list ]
870-
set listaFiles [list ]
870+
set files_list [list ]
871871

872872
if { $device_temp_state == True} {
873873

@@ -919,13 +919,13 @@ proc ::Dam::write::TemperaturebyDevices { } {
919919
dict set parameterDict value $value
920920

921921
if {$fileid ni [list "" "- No file" $::spdAux::no_file_string]} {
922-
if {$fileid ni $listaFiles} {
923-
lappend listaFiles $fileid
922+
if {$fileid ni $files_list} {
923+
lappend files_list $fileid
924924
incr number_devices
925925
dict set parameterDict table [expr $number_tables + $number_devices]
926926
} else {
927-
for {set i 0} {$i < [llength $listaFiles]} {incr i} {
928-
if {$fileid eq [lindex $listaFiles $i]} {
927+
for {set i 0} {$i < [llength $files_list]} {incr i} {
928+
if {$fileid eq [lindex $files_list $i]} {
929929
dict set parameterDict table [expr $number_tables + $i + 1]
930930
break
931931
}

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
<parameter n="Bottom_Temp" pn="Bottom Temperature" type="double" v="0.0"/>
4444
<parameter n="Height_Dam" pn="Height Dam" type="double" v="0.0"/>
4545
<parameter n="Temperature_Amplitude" pn="Temperature Amplitude" type="double" v="0.0"/>
46-
<parameter n="Day_Ambient_Temp" pn="Day" type="integer" v="0.0"/>
46+
<parameter n="Day_Max_Temp" pn="Day Maximum Temperature" type="integer" v="0.0"/>
4747
<parameter n="Water_level" pn="Water Level" type="double" v="0.0"/>
4848
<parameter n="Water_level_Table" pn="Water Level table filename" type="tablefile" v=""/>
4949
<parameter n="Month" pn="Month" type="double" v="0.0"/>

0 commit comments

Comments
 (0)