@@ -39,35 +39,40 @@ proc write::processMaterials { {alt_path ""} {last_assigned_id -1}} {
3939 set element_name [write::getValueByNode $element_node " force" ]
4040 }
4141
42+ set processed 0
4243 set claw_node [$gNode selectNodes " .//value\[ @n = 'ConstitutiveLaw'\] " ]
4344 if {$claw_node ne " " } {
4445 set claw [write::getValueByNode $claw_node " force" ]
45- set const_law [Model::getConstitutiveLaw $claw ]
46- set output_type [$const_law getOutputMode]
47- if {$output_type eq " Parameters" } {
48- set s1 [$gNode selectNodes " .//value" ]
49- } else {
50- set s1 " "
51- set matvalueNode [$gNode selectNodes $xp2 ]
52- if {$matvalueNode ne " " } {
53- set real_material_name [write::getValueByNode $matvalueNode " force" ]
54- set xp3 " [ spdAux::getRoute $materials_un ] /blockdata\[ @n='material' and @name='$real_material_name ']"
55- set matNode [$root selectNodes $xp3 ]
56- set s1 [join [list [$gNode selectNodes " .//value" ] [$matNode selectNodes " .//value" ]]]
46+ if {$claw ne " None" } {
47+ set processed 1
48+ set const_law [Model::getConstitutiveLaw $claw ]
49+ set output_type [$const_law getOutputMode]
50+ if {$output_type eq " Parameters" } {
51+ set s1 [$gNode selectNodes " .//value" ]
52+ } else {
53+ set s1 " "
54+ set matvalueNode [$gNode selectNodes $xp2 ]
55+ if {$matvalueNode ne " " } {
56+ set real_material_name [write::getValueByNode $matvalueNode " force" ]
57+ set xp3 " [ spdAux::getRoute $materials_un ] /blockdata\[ @n='material' and @name='$real_material_name ']"
58+ set matNode [$root selectNodes $xp3 ]
59+ set s1 [join [list [$gNode selectNodes " .//value" ] [$matNode selectNodes " .//value" ]]]
60+ }
5761 }
58- }
5962
60- foreach valueNode $s1 {
61- write::forceUpdateNode $valueNode
62- set name [$valueNode getAttribute n]
63- set state [get_domnode_attribute $valueNode state]
64- if {$state ne " hidden" || $name eq " ConstitutiveLaw" } {
65- # All the introduced values are translated to 'm' and 'kg' with the help of this function
66- set value [gid_groups_conds::convert_value_to_default $valueNode ]
67- dict set mat_dict $submodelpart_id $name $value
63+ foreach valueNode $s1 {
64+ write::forceUpdateNode $valueNode
65+ set name [$valueNode getAttribute n]
66+ set state [get_domnode_attribute $valueNode state]
67+ if {$state ne " hidden" || $name eq " ConstitutiveLaw" } {
68+ # All the introduced values are translated to 'm' and 'kg' with the help of this function
69+ set value [gid_groups_conds::convert_value_to_default $valueNode ]
70+ dict set mat_dict $submodelpart_id $name $value
71+ }
6872 }
6973 }
70- } else {
74+ }
75+ if {!$processed } {
7176 set s1 " "
7277 set matvalueNode [$gNode selectNodes $xp2 ]
7378 if {$matvalueNode ne " " } {
@@ -172,7 +177,7 @@ proc write::getPropertiesListByConditionXPath {cnd_xpath {write_claw_name "True"
172177 set variables_dict [dict create]
173178 foreach prop [dict keys [dict get $mat_dict $submodelpart_id ] ] {
174179 if {$prop ni $exclusionList } {
175- dict set variables_list $prop [getFormattedValue [dict get $mat_dict $submodelpart_id $prop ]]
180+ dict set variables_dict $prop [getFormattedValue [dict get $mat_dict $submodelpart_id $prop ]]
176181 }
177182 }
178183 set material_dict [dict create]
@@ -181,7 +186,7 @@ proc write::getPropertiesListByConditionXPath {cnd_xpath {write_claw_name "True"
181186 set constitutive_law_name [$constitutive_law getKratosName]
182187 dict set material_dict constitutive_law [dict create name $constitutive_law_name ]
183188 }
184- dict set material_dict Variables $variables_list
189+ dict set material_dict Variables $variables_dict
185190 dict set material_dict Tables dictnull
186191
187192 dict set prop_dict Material $material_dict
0 commit comments