Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion kratos.gid/apps/Fluid/write/write.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ proc ::Fluid::write::writeModelPartEvent { } {
set lista [::Fluid::xml::GetListOfSubModelParts $base_root]

# Write the geometries
set ret [::write::writeGeometryConnectivities $lista]
set ret [::write::writeGeometryConnectivities $lista 1]

# Write the submodelparts
set grouped_conditions [dict create]
Expand Down
27 changes: 24 additions & 3 deletions kratos.gid/scripts/Writing/WriteGeometries.tcl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

proc write::writeGeometryConnectivities { group_list } {
proc write::writeGeometryConnectivities { group_list {merge_by_etype 0}} {
# Avoid duplicates (groups used twice and intervals!)
set processed_list_names [list ]
set processed_list [list ]
Expand Down Expand Up @@ -27,8 +27,29 @@ proc write::writeGeometryConnectivities { group_list } {
# Get the number of nodes and the geometry type
lassign [getEtype $ov $group_name] etype nnodes

# Print into the mdpa file
write::printGeometryConnectivities $group_name $etype $nnodes
if {$merge_by_etype eq 0} {
# Print into the mdpa file
write::printGeometryConnectivities $group_name $etype $nnodes
} else {
# Merge by etype
set key $etype-$nnodes
dict lappend merged_groups $key $group_name
}
}

if {$merge_by_etype eq 1} {
# Print the merged groups
foreach key [dict keys $merged_groups] {
Comment on lines +41 to +42

Comment on lines +40 to +43
set new_group_name "_HIDDEN_GEOM_$key"
set group_names [dict get $merged_groups $key]
set etype [lindex [split $key -] 0]
set nnodes [lindex [split $key -] 1]
if {[GiD_Groups exists $new_group_name]} {GiD_Groups delete $new_group_name}
spdAux::MergeGroups $new_group_name $group_names
write::printGeometryConnectivities $new_group_name $etype $nnodes
GiD_Groups delete $new_group_name
}
}
}

Expand Down
Loading