From 02f22e26df8c7163df5345fa3cfc01a932c0deac Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Tue, 30 Jan 2024 16:08:02 +0000 Subject: [PATCH 01/12] Updated files due to change of application name from `ParticleMechanicsApplication` to `MPMApplication` --- kratos.gid/apps/MPM/app.json | 6 +-- .../apps/MPM/examples/CantileverBeam.tcl | 2 +- .../apps/MPM/examples/FallingSandBall.tcl | 2 +- kratos.gid/apps/MPM/examples/GranularFlow.tcl | 2 +- .../MPM/examples/StaticCantileverBeam.tcl | 2 +- .../apps/MPM/write/writeProjectParameters.tcl | 20 ++++---- kratos.gid/apps/MPM/xml/ConstitutiveLaws.xml | 50 +++++++++---------- kratos.gid/apps/MPM/xml/Elements.xml | 26 +++++----- kratos.gid/apps/MPM/xml/Main.spd | 2 +- kratos.gid/apps/MPM/xml/Parts.spd | 2 +- kratos.gid/apps/MPM/xml/Processes.xml | 10 ++-- kratos.gid/apps/MPM/xml/XmlController.tcl | 2 +- 12 files changed, 63 insertions(+), 63 deletions(-) diff --git a/kratos.gid/apps/MPM/app.json b/kratos.gid/apps/MPM/app.json index 614988908..eb0f06a2d 100644 --- a/kratos.gid/apps/MPM/app.json +++ b/kratos.gid/apps/MPM/app.json @@ -3,9 +3,9 @@ "name": "MPM", "prefix": "MPM", "themed": false, - "kratos_name": "ParticleMechanicsApplication", + "kratos_name": "MPMApplication", "python_packages": [ - "KratosParticleMechanicsApplication", + "KratosMPMApplication", "KratosLinearSolversApplication" ], "dimensions": [ @@ -44,7 +44,7 @@ }, "write": { "coordinates": "all", - "materials_file": "ParticleMaterials.json", + "materials_file": "MaterialPointsMaterials.json", "properties_location": "json", "model_part_name": "Background_Grid" }, diff --git a/kratos.gid/apps/MPM/examples/CantileverBeam.tcl b/kratos.gid/apps/MPM/examples/CantileverBeam.tcl index 63d741bfa..ce4fcd84c 100644 --- a/kratos.gid/apps/MPM/examples/CantileverBeam.tcl +++ b/kratos.gid/apps/MPM/examples/CantileverBeam.tcl @@ -127,7 +127,7 @@ proc ::MPM::examples::CantileverBeam::TreeAssignation2D {args} { set mpm_solid_part [customlib::AddConditionGroupOnXPath $mpm_solid_parts_route HyperelasticBeam] $mpm_solid_part setAttribute ov surface set constitutive_law_name "HyperElasticNeoHookeanPlaneStrain${nd}Law" - set props [list Element MPMUpdatedLagrangian$nd ConstitutiveLaw $constitutive_law_name Material HyperelasticBeam DENSITY 1000 YOUNG_MODULUS 90000000 POISSON_RATIO 0.49 THICKNESS 0.1 PARTICLES_PER_ELEMENT 6] + set props [list Element MPMUpdatedLagrangian$nd ConstitutiveLaw $constitutive_law_name Material HyperelasticBeam DENSITY 1000 YOUNG_MODULUS 90000000 POISSON_RATIO 0.49 THICKNESS 0.1 MATERIAL_POINTS_PER_ELEMENT 6] spdAux::SetValuesOnBaseNode $mpm_solid_part $props ## Grid diff --git a/kratos.gid/apps/MPM/examples/FallingSandBall.tcl b/kratos.gid/apps/MPM/examples/FallingSandBall.tcl index 47cc81446..ea02008e6 100644 --- a/kratos.gid/apps/MPM/examples/FallingSandBall.tcl +++ b/kratos.gid/apps/MPM/examples/FallingSandBall.tcl @@ -114,7 +114,7 @@ proc ::MPM::examples::FallingSandBall::TreeAssignation2D {args} { set mpm_solid_part [customlib::AddConditionGroupOnXPath $mpm_solid_parts_route Sand] $mpm_solid_part setAttribute ov surface set constitutive_law_name "HenckyMCPlasticPlaneStrain${nd}Law" - set props [list Element MPMUpdatedLagrangian$nd ConstitutiveLaw $constitutive_law_name Material Sand DENSITY 2300 YOUNG_MODULUS 6e6 POISSON_RATIO 0.3 THICKNESS 0.1 PARTICLES_PER_ELEMENT 6] + set props [list Element MPMUpdatedLagrangian$nd ConstitutiveLaw $constitutive_law_name Material Sand DENSITY 2300 YOUNG_MODULUS 6e6 POISSON_RATIO 0.3 THICKNESS 0.1 MATERIAL_POINTS_PER_ELEMENT 6] spdAux::SetValuesOnBaseNode $mpm_solid_part $props ## Grid diff --git a/kratos.gid/apps/MPM/examples/GranularFlow.tcl b/kratos.gid/apps/MPM/examples/GranularFlow.tcl index 0dd2ba2c5..ada892092 100644 --- a/kratos.gid/apps/MPM/examples/GranularFlow.tcl +++ b/kratos.gid/apps/MPM/examples/GranularFlow.tcl @@ -127,7 +127,7 @@ proc ::MPM::examples::GranularFlow::TreeAssignation2D {args} { set mpm_solid_part [customlib::AddConditionGroupOnXPath $mpm_solid_parts_route GranularMaterial] $mpm_solid_part setAttribute ov surface set constitutive_law_name "HenckyMCPlasticPlaneStrain${nd}Law" - set props [list Element MPMUpdatedLagrangian$nd ConstitutiveLaw $constitutive_law_name Material GranularMaterial DENSITY 2650 YOUNG_MODULUS 840000 POISSON_RATIO 0.3 INTERNAL_FRICTION_ANGLE 19.8 THICKNESS 0.1 PARTICLES_PER_ELEMENT 3] + set props [list Element MPMUpdatedLagrangian$nd ConstitutiveLaw $constitutive_law_name Material GranularMaterial DENSITY 2650 YOUNG_MODULUS 840000 POISSON_RATIO 0.3 INTERNAL_FRICTION_ANGLE 19.8 THICKNESS 0.1 MATERIAL_POINTS_PER_ELEMENT 3] spdAux::SetValuesOnBaseNode $mpm_solid_part $props ## Grid diff --git a/kratos.gid/apps/MPM/examples/StaticCantileverBeam.tcl b/kratos.gid/apps/MPM/examples/StaticCantileverBeam.tcl index d64afd43c..5497158eb 100644 --- a/kratos.gid/apps/MPM/examples/StaticCantileverBeam.tcl +++ b/kratos.gid/apps/MPM/examples/StaticCantileverBeam.tcl @@ -132,7 +132,7 @@ proc ::MPM::examples::StaticCantileverBeam::TreeAssignation2D {args} { set mpm_solid_part [customlib::AddConditionGroupOnXPath $mpm_solid_parts_route LinearElasticBeam] $mpm_solid_part setAttribute ov surface set constitutive_law_name "LinearElasticIsotropicPlaneStrain{nd}Law" - set props [list Element MPMUpdatedLagrangian$nd ConstitutiveLaw $constitutive_law_name Material LinearElasticBeam DENSITY 7850 YOUNG_MODULUS 206.9e9 POISSON_RATIO 0.29 THICKNESS 0.1 PARTICLES_PER_ELEMENT 6] + set props [list Element MPMUpdatedLagrangian$nd ConstitutiveLaw $constitutive_law_name Material LinearElasticBeam DENSITY 7850 YOUNG_MODULUS 206.9e9 POISSON_RATIO 0.29 THICKNESS 0.1 MATERIAL_POINTS_PER_ELEMENT 6] spdAux::SetValuesOnBaseNode $mpm_solid_part $props ## Grid diff --git a/kratos.gid/apps/MPM/write/writeProjectParameters.tcl b/kratos.gid/apps/MPM/write/writeProjectParameters.tcl index 80c488f6a..cb9014861 100644 --- a/kratos.gid/apps/MPM/write/writeProjectParameters.tcl +++ b/kratos.gid/apps/MPM/write/writeProjectParameters.tcl @@ -3,7 +3,7 @@ proc ::MPM::write::getParametersDict { } { set project_parameters_dict [Structural::write::getParametersDict] # Analysis stage field - dict set project_parameters_dict analysis_stage "KratosMultiphysics.ParticleMechanicsApplication.particle_mechanics_analysis" + dict set project_parameters_dict analysis_stage "KratosMultiphysics.MPMApplication.mpm_analysis" # Quasi-static must be written as Quasi-static... set solutiontype [write::getValue STSoluType] @@ -98,9 +98,9 @@ proc ::MPM::write::getParametersDict { } { set activate_gravity [write::getValue ActivateGravity] if {$activate_gravity eq "On"} { set gravity_dict [dict create ] - dict set gravity_dict python_module assign_gravity_to_particle_process - dict set gravity_dict kratos_module "KratosMultiphysics.ParticleMechanicsApplication" - dict set gravity_dict process_name AssignGravityToParticleProcess + dict set gravity_dict python_module assign_gravity_to_material_point_process + dict set gravity_dict kratos_module "KratosMultiphysics.MPMApplication" + dict set gravity_dict process_name AssignGravityToMaterialPointProcess set gravity_parameters_dict [dict create ] dict set gravity_parameters_dict model_part_name MPM_Material dict set gravity_parameters_dict variable_name MP_VOLUME_ACCELERATION @@ -156,9 +156,9 @@ proc ::MPM::write::GetOutputProcessesList { } { set body_output_configuration_dict [lindex [dict get $project_parameters_dict output_processes gid_output] 0] set grid_output_configuration_dict [lindex [dict get $project_parameters_dict output_processes gid_output] 0] - dict set body_output_configuration_dict python_module particle_gid_output_process - dict set body_output_configuration_dict kratos_module KratosMultiphysics.ParticleMechanicsApplication - dict set body_output_configuration_dict process_name ParticleMPMGiDOutputProcess + dict set body_output_configuration_dict python_module mpm_gid_output_process + dict set body_output_configuration_dict kratos_module KratosMultiphysics.MPMApplication + dict set body_output_configuration_dict process_name MPMGiDOutputProcess dict set body_output_configuration_dict Parameters model_part_name MPM_Material dict set grid_output_configuration_dict Parameters model_part_name Background_Grid dict set body_output_configuration_dict Parameters output_name [dict get $project_parameters_dict solver_settings model_import_settings input_filename] @@ -188,9 +188,9 @@ proc ::MPM::write::GetOutputProcessesList { } { set grid_output_configuration_dict [lindex [dict get $project_parameters_dict output_processes vtk_output] 0] - dict set body_output_configuration_dict python_module particle_vtk_output_process - dict set body_output_configuration_dict kratos_module KratosMultiphysics.ParticleMechanicsApplication - dict set body_output_configuration_dict process_name ParticleVtkOutputProcess + dict set body_output_configuration_dict python_module mpm_vtk_output_process + dict set body_output_configuration_dict kratos_module KratosMultiphysics.MPMApplication + dict set body_output_configuration_dict process_name MPMVtkOutputProcess dict set body_output_configuration_dict Parameters model_part_name MPM_Material dict unset body_output_configuration_dict Parameters nodal_data_value_variables dict unset body_output_configuration_dict Parameters element_data_value_variables diff --git a/kratos.gid/apps/MPM/xml/ConstitutiveLaws.xml b/kratos.gid/apps/MPM/xml/ConstitutiveLaws.xml index 7a9b9679a..27c9bd31a 100644 --- a/kratos.gid/apps/MPM/xml/ConstitutiveLaws.xml +++ b/kratos.gid/apps/MPM/xml/ConstitutiveLaws.xml @@ -5,9 +5,9 @@ - + - + @@ -16,7 +16,7 @@ - + @@ -26,9 +26,9 @@ - + help="Linear Elastic Behaviour in 2D Axis-symmetric" Dimension="2Da" App="MPM" FormulationType="Irreducible" ImplementedInApplication="MPMApplication" > @@ -39,7 +39,7 @@ - + @@ -50,7 +50,7 @@ - + @@ -59,8 +59,8 @@ - + @@ -70,7 +70,7 @@ - + @@ -80,7 +80,7 @@ - + @@ -90,7 +90,7 @@ - + @@ -101,7 +101,7 @@ - + @@ -114,8 +114,8 @@ - + @@ -127,7 +127,7 @@ - + @@ -140,7 +140,7 @@ - + @@ -157,7 +157,7 @@ - + @@ -173,7 +173,7 @@ - + @@ -190,7 +190,7 @@ - + @@ -205,8 +205,8 @@ - + @@ -220,7 +220,7 @@ - + @@ -234,7 +234,7 @@ - + @@ -243,7 +243,7 @@ - + diff --git a/kratos.gid/apps/MPM/xml/Elements.xml b/kratos.gid/apps/MPM/xml/Elements.xml index 1e1f89f22..2b525d42e 100644 --- a/kratos.gid/apps/MPM/xml/Elements.xml +++ b/kratos.gid/apps/MPM/xml/Elements.xml @@ -1,7 +1,7 @@ - + @@ -20,7 +20,7 @@ - + @@ -32,7 +32,7 @@ - + @@ -51,7 +51,7 @@ - + @@ -62,7 +62,7 @@ - + @@ -82,7 +82,7 @@ - + @@ -94,7 +94,7 @@ - + @@ -112,7 +112,7 @@ - + @@ -123,7 +123,7 @@ - + @@ -141,7 +141,7 @@ - + @@ -154,7 +154,7 @@ - + @@ -173,7 +173,7 @@ - + @@ -192,7 +192,7 @@ - + diff --git a/kratos.gid/apps/MPM/xml/Main.spd b/kratos.gid/apps/MPM/xml/Main.spd index 98aca659e..3d237ffa4 100644 --- a/kratos.gid/apps/MPM/xml/Main.spd +++ b/kratos.gid/apps/MPM/xml/Main.spd @@ -1,5 +1,5 @@ - + diff --git a/kratos.gid/apps/MPM/xml/Parts.spd b/kratos.gid/apps/MPM/xml/Parts.spd index 98ee8525d..d88d77dd4 100644 --- a/kratos.gid/apps/MPM/xml/Parts.spd +++ b/kratos.gid/apps/MPM/xml/Parts.spd @@ -1,4 +1,4 @@ - + diff --git a/kratos.gid/apps/MPM/xml/Processes.xml b/kratos.gid/apps/MPM/xml/Processes.xml index 5372fa49f..c9dbd5bd1 100644 --- a/kratos.gid/apps/MPM/xml/Processes.xml +++ b/kratos.gid/apps/MPM/xml/Processes.xml @@ -1,15 +1,15 @@ - - + + + kratos_module="KratosMultiphysics" help="" > - + + kratos_module="KratosMultiphysics.MPMApplication" help="" > diff --git a/kratos.gid/apps/MPM/xml/XmlController.tcl b/kratos.gid/apps/MPM/xml/XmlController.tcl index ab6b2ec3e..707ebc6f7 100644 --- a/kratos.gid/apps/MPM/xml/XmlController.tcl +++ b/kratos.gid/apps/MPM/xml/XmlController.tcl @@ -19,7 +19,7 @@ proc MPM::xml::Init { } { foreach strategy $::Model::SolutionStrategies { $strategy setAttribute NeedElements false foreach scheme [$strategy getSchemes] { - $scheme addElementFilter ImplementedInApplication ParticleMechanicsApplication + $scheme addElementFilter ImplementedInApplication MPMApplication } } From 0c54f7fdb95c965972953e0e2aa97043f024c618 Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Tue, 12 Mar 2024 11:06:02 +0000 Subject: [PATCH 02/12] revert small change --- kratos.gid/apps/MPM/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kratos.gid/apps/MPM/app.json b/kratos.gid/apps/MPM/app.json index eb0f06a2d..04680dc44 100644 --- a/kratos.gid/apps/MPM/app.json +++ b/kratos.gid/apps/MPM/app.json @@ -44,7 +44,7 @@ }, "write": { "coordinates": "all", - "materials_file": "MaterialPointsMaterials.json", + "materials_file": "ParticleMaterials.json", "properties_location": "json", "model_part_name": "Background_Grid" }, From 9767aff890c50a048f570027410da4308d3f496a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20G=C3=A1rate?= Date: Wed, 9 Oct 2024 13:14:35 +0200 Subject: [PATCH 03/12] Geometries for single node dont print geoms --- kratos.gid/scripts/Writing/WriteGeometries.tcl | 2 ++ 1 file changed, 2 insertions(+) diff --git a/kratos.gid/scripts/Writing/WriteGeometries.tcl b/kratos.gid/scripts/Writing/WriteGeometries.tcl index 6084233bd..d844599a3 100644 --- a/kratos.gid/scripts/Writing/WriteGeometries.tcl +++ b/kratos.gid/scripts/Writing/WriteGeometries.tcl @@ -33,7 +33,9 @@ proc write::writeGeometryConnectivities { group_list } { } proc write::printGeometryConnectivities {group etype nnodes} { + W "printGeometryConnectivities $group $etype $nnodes" + if {$nnodes eq "" || $nnodes < 1} {return} set inittime [clock seconds] # Prepare the indent set s [mdpaIndent] From 6e624c8a17e5d029ea8bd228a1bb86dfbe9fd1c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20G=C3=A1rate?= Date: Wed, 9 Oct 2024 13:14:46 +0200 Subject: [PATCH 04/12] config --- kratos.gid/apps/ConjugateHeatTransfer/app.json | 3 ++- kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/kratos.gid/apps/ConjugateHeatTransfer/app.json b/kratos.gid/apps/ConjugateHeatTransfer/app.json index 605d6755a..12cc086aa 100644 --- a/kratos.gid/apps/ConjugateHeatTransfer/app.json +++ b/kratos.gid/apps/ConjugateHeatTransfer/app.json @@ -38,7 +38,8 @@ "write": { "coordinates": "groups", "properties_location": "json", - "model_part_name": "ThermalModelPart" + "model_part_name": "ThermalModelPart", + "write_mdpa_mode": "geometries" }, "main_launch_file": "../../exec/MainKratos.py", "examples": "examples/examples.xml" diff --git a/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl b/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl index b9bd51d83..7903d61c6 100644 --- a/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl +++ b/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl @@ -20,6 +20,7 @@ proc ::ConjugateHeatTransfer::write::Init { } { SetAttribute model_part_name [::ConjugateHeatTransfer::GetWriteProperty model_part_name] SetAttribute coordinates [::ConjugateHeatTransfer::GetWriteProperty coordinates] + SetAttribute write_mdpa_mode [::ConvectionDiffusion::GetWriteProperty write_mdpa_mode] SetAttribute fluid_mdpa_suffix Fluid SetAttribute solid_mdpa_suffix Solid From 7fc507dfcf81903429ffb094cb9abec8d566deab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20G=C3=A1rate?= Date: Wed, 9 Oct 2024 13:17:20 +0200 Subject: [PATCH 05/12] comment --- kratos.gid/scripts/Writing/WriteGeometries.tcl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kratos.gid/scripts/Writing/WriteGeometries.tcl b/kratos.gid/scripts/Writing/WriteGeometries.tcl index d844599a3..b65449b41 100644 --- a/kratos.gid/scripts/Writing/WriteGeometries.tcl +++ b/kratos.gid/scripts/Writing/WriteGeometries.tcl @@ -33,7 +33,7 @@ proc write::writeGeometryConnectivities { group_list } { } proc write::printGeometryConnectivities {group etype nnodes} { - W "printGeometryConnectivities $group $etype $nnodes" + # W "printGeometryConnectivities $group $etype $nnodes" if {$nnodes eq "" || $nnodes < 1} {return} set inittime [clock seconds] From 41c0d75101149e2c2d8e21f430b50e8d229fe42a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20G=C3=A1rate?= Date: Wed, 9 Oct 2024 14:21:28 +0200 Subject: [PATCH 06/12] modeler --- .../ConjugateHeatTransfer/write/writeProjectParameters.tcl | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kratos.gid/apps/ConjugateHeatTransfer/write/writeProjectParameters.tcl b/kratos.gid/apps/ConjugateHeatTransfer/write/writeProjectParameters.tcl index bb1c60671..474035516 100644 --- a/kratos.gid/apps/ConjugateHeatTransfer/write/writeProjectParameters.tcl +++ b/kratos.gid/apps/ConjugateHeatTransfer/write/writeProjectParameters.tcl @@ -22,6 +22,9 @@ proc ::ConjugateHeatTransfer::write::getParametersDict { } { # processes dict set projectParametersDict processes [ConjugateHeatTransfer::write::GetProcessList] + # modelers + set projectParametersDict [::write::GetModelersDict $projectParametersDict] + return $projectParametersDict } From 37949af619690876bd0f7cb823d591b6da1b0563 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20G=C3=A1rate?= Date: Thu, 10 Oct 2024 19:08:05 +0200 Subject: [PATCH 07/12] cht mdpa write split by domain --- kratos.gid/apps/Buoyancy/write/write.tcl | 4 ++++ kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl | 5 +++++ kratos.gid/apps/ConjugateHeatTransfer/xml/Main.spd | 4 ++-- kratos.gid/apps/ConvectionDiffusion/write/write.tcl | 7 ++++++- kratos.gid/apps/Fluid/write/write.tcl | 8 +++++++- kratos.gid/apps/Fluid/write/writeByGiDId.tcl | 1 + 6 files changed, 25 insertions(+), 4 deletions(-) diff --git a/kratos.gid/apps/Buoyancy/write/write.tcl b/kratos.gid/apps/Buoyancy/write/write.tcl index ea1b849ad..4315b88b0 100644 --- a/kratos.gid/apps/Buoyancy/write/write.tcl +++ b/kratos.gid/apps/Buoyancy/write/write.tcl @@ -20,6 +20,10 @@ proc ::Buoyancy::write::writeModelPartEvent { } { if {$err ne ""} {error $err} ::Fluid::write::Init + + set fluid_base_xpath [spdAux::getRoute Buoyancy_FL] + set fluid_base [[customlib::GetBaseRoot] selectNodes $fluid_base_xpath] + set ::Fluid::write::fluid_base $fluid_base ::Fluid::write::writeModelPartEvent diff --git a/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl b/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl index 7903d61c6..92222581f 100644 --- a/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl +++ b/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl @@ -47,6 +47,11 @@ proc ::ConjugateHeatTransfer::write::writeModelPartEvent { } { # Convection diffusion mdpa ConvectionDiffusion::write::Init ConvectionDiffusion::write::SetAttribute writeCoordinatesByGroups [GetAttribute coordinates] + + set base_root_xpath [spdAux::getRoute CHTCNVDFF] + set base_root [[customlib::GetBaseRoot] selectNodes $base_root_xpath] + set ::ConvectionDiffusion::write::base_root $base_root + write::writeAppMDPA ConvectionDiffusion write::RenameFileInModel "$filename.mdpa" "${filename}_[GetAttribute solid_mdpa_suffix].mdpa" } diff --git a/kratos.gid/apps/ConjugateHeatTransfer/xml/Main.spd b/kratos.gid/apps/ConjugateHeatTransfer/xml/Main.spd index 29b8e7002..e2b5ab5e8 100644 --- a/kratos.gid/apps/ConjugateHeatTransfer/xml/Main.spd +++ b/kratos.gid/apps/ConjugateHeatTransfer/xml/Main.spd @@ -4,7 +4,7 @@ - + @@ -27,7 +27,7 @@ - + diff --git a/kratos.gid/apps/ConvectionDiffusion/write/write.tcl b/kratos.gid/apps/ConvectionDiffusion/write/write.tcl index 032a26b13..3004d6da5 100644 --- a/kratos.gid/apps/ConvectionDiffusion/write/write.tcl +++ b/kratos.gid/apps/ConvectionDiffusion/write/write.tcl @@ -5,6 +5,7 @@ namespace eval ::ConvectionDiffusion::write { variable ConvectionDiffusionConditions variable writeCoordinatesByGroups variable writeAttributes + variable base_root } proc ::ConvectionDiffusion::write::Init { } { @@ -27,10 +28,14 @@ proc ::ConvectionDiffusion::write::Init { } { SetAttribute output_model_part_name [::ConvectionDiffusion::GetWriteProperty output_model_part_name] SetAttribute write_mdpa_mode [::ConvectionDiffusion::GetWriteProperty write_mdpa_mode] + + variable base_root + set base_root [customlib::GetBaseRoot] } # Events proc ::ConvectionDiffusion::write::writeModelPartEvent { } { + variable base_root # Validation set err [Validate] if {$err ne ""} {error $err} @@ -48,7 +53,7 @@ proc ::ConvectionDiffusion::write::writeModelPartEvent { } { if {[GetAttribute write_mdpa_mode] eq "geometries"} { # Get the list of groups in the spd - set lista [::spdAux::GetListOfSubModelParts] + set lista [::spdAux::GetListOfSubModelParts $base_root] # Write the geometries set ret [::write::writeGeometryConnectivities $lista] diff --git a/kratos.gid/apps/Fluid/write/write.tcl b/kratos.gid/apps/Fluid/write/write.tcl index 019619e66..4a7b2eaef 100644 --- a/kratos.gid/apps/Fluid/write/write.tcl +++ b/kratos.gid/apps/Fluid/write/write.tcl @@ -9,6 +9,7 @@ namespace eval ::Fluid::write { # after regular conditions are written, we need this number in order to print the custom submodelpart conditions # only if are applied over things that are not in the skin variable last_condition_iterator + variable fluid_base } proc ::Fluid::write::Init { } { @@ -32,10 +33,15 @@ proc ::Fluid::write::Init { } { variable last_condition_iterator set last_condition_iterator 0 + + variable fluid_base + set fluid_base "" } # MDPA write event proc ::Fluid::write::writeModelPartEvent { } { + variable fluid_base + # Validation set err [Validate] if {$err ne ""} {error $err} @@ -55,7 +61,7 @@ proc ::Fluid::write::writeModelPartEvent { } { if {[GetAttribute write_mdpa_mode] eq "geometries"} { # Write geometries # Get the list of groups in the spd - set lista [::Fluid::xml::GetListOfSubModelParts] + set lista [::Fluid::xml::GetListOfSubModelParts $fluid_base] # Write the geometries set ret [::write::writeGeometryConnectivities $lista] diff --git a/kratos.gid/apps/Fluid/write/writeByGiDId.tcl b/kratos.gid/apps/Fluid/write/writeByGiDId.tcl index d15541111..38d3ffbd2 100644 --- a/kratos.gid/apps/Fluid/write/writeByGiDId.tcl +++ b/kratos.gid/apps/Fluid/write/writeByGiDId.tcl @@ -97,6 +97,7 @@ proc ::Fluid::write::writeBoundaryConditions { } { set BCUN [GetAttribute conditions_un] # Write the conditions + W "Writing conditions on $BCUN" ::write::writeConditionsByGiDId $BCUN } From 5182209775b14ba02935c4ef964f90755fafdab3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20G=C3=A1rate?= Date: Thu, 10 Oct 2024 23:10:22 +0200 Subject: [PATCH 08/12] Write properly modelers and submodelparts --- .../ConjugateHeatTransfer/write/write.tcl | 14 +++- .../write/writeProjectParameters.tcl | 75 +++++++++++++++++-- 2 files changed, 79 insertions(+), 10 deletions(-) diff --git a/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl b/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl index 92222581f..d26136ff3 100644 --- a/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl +++ b/kratos.gid/apps/ConjugateHeatTransfer/write/write.tcl @@ -7,6 +7,8 @@ namespace eval ::ConjugateHeatTransfer::write { variable writeAttributes variable fluid_domain_solver_settings variable solid_domain_solver_settings + + variable mdpa_files } proc ::ConjugateHeatTransfer::write::Init { } { @@ -29,10 +31,14 @@ proc ::ConjugateHeatTransfer::write::Init { } { variable solid_domain_solver_settings set fluid_domain_solver_settings [dict create] set solid_domain_solver_settings [dict create] + + variable mdpa_files + set mdpa_files [] } # Events proc ::ConjugateHeatTransfer::write::writeModelPartEvent { } { + variable mdpa_files # Validation set err [Validate] if {$err ne ""} {error $err} @@ -42,7 +48,9 @@ proc ::ConjugateHeatTransfer::write::writeModelPartEvent { } { # Buoyancy mdpa ::ConjugateHeatTransfer::write::PrepareBuoyancy write::writeAppMDPA Buoyancy - write::RenameFileInModel "$filename.mdpa" "${filename}_[GetAttribute fluid_mdpa_suffix].mdpa" + set buoyancy_mdpa "${filename}_[GetAttribute fluid_mdpa_suffix]" + write::RenameFileInModel "$filename.mdpa" ${buoyancy_mdpa}.mdpa + lappend mdpa_files $buoyancy_mdpa # Convection diffusion mdpa ConvectionDiffusion::write::Init @@ -53,7 +61,9 @@ proc ::ConjugateHeatTransfer::write::writeModelPartEvent { } { set ::ConvectionDiffusion::write::base_root $base_root write::writeAppMDPA ConvectionDiffusion - write::RenameFileInModel "$filename.mdpa" "${filename}_[GetAttribute solid_mdpa_suffix].mdpa" + set convdif_mdpa "${filename}_[GetAttribute solid_mdpa_suffix]" + write::RenameFileInModel "$filename.mdpa" ${convdif_mdpa}.mdpa + lappend mdpa_files $convdif_mdpa } proc ::ConjugateHeatTransfer::write::writeCustomFilesEvent { } { diff --git a/kratos.gid/apps/ConjugateHeatTransfer/write/writeProjectParameters.tcl b/kratos.gid/apps/ConjugateHeatTransfer/write/writeProjectParameters.tcl index 474035516..6d5fd0d7a 100644 --- a/kratos.gid/apps/ConjugateHeatTransfer/write/writeProjectParameters.tcl +++ b/kratos.gid/apps/ConjugateHeatTransfer/write/writeProjectParameters.tcl @@ -24,6 +24,10 @@ proc ::ConjugateHeatTransfer::write::getParametersDict { } { # modelers set projectParametersDict [::write::GetModelersDict $projectParametersDict] + set projectParametersDict [::ConjugateHeatTransfer::write::PlaceMDPAImports $projectParametersDict] + set projectParametersDict [::ConjugateHeatTransfer::write::ModelersPrefix $projectParametersDict] + + dict unset projectParametersDict solver_settings model_import_settings return $projectParametersDict } @@ -44,16 +48,10 @@ proc ::ConjugateHeatTransfer::write::GetSolverSettingsDict {} { set filename [Kratos::GetModelName] # Prepare the solver strategies - # Buoyancy Fluid > model_import_settings -> mdpa fluid - dict set ConjugateHeatTransfer::write::fluid_domain_solver_settings solver_settings fluid_solver_settings model_import_settings input_filename "${filename}_[GetAttribute fluid_mdpa_suffix]" - # Buoyancy Thermic > model_import_settings -> none - dict set ConjugateHeatTransfer::write::fluid_domain_solver_settings solver_settings thermal_solver_settings model_import_settings input_filename "use_input_model_part" - dict unset ConjugateHeatTransfer::write::fluid_domain_solver_settings solver_settings thermal_solver_settings model_import_settings input_type + dict unset ConjugateHeatTransfer::write::fluid_domain_solver_settings model_import_settings # Buoyancy Thermic > model_part_name dict set ConjugateHeatTransfer::write::fluid_domain_solver_settings solver_settings thermal_solver_settings model_part_name "FluidThermalModelPart" - # Solid Thermic > Modelpart name -> mdpa solid - dict set ConjugateHeatTransfer::write::solid_domain_solver_settings solver_settings model_import_settings input_filename "${filename}_[GetAttribute solid_mdpa_suffix]" - + dict set solver_settings_dict fluid_domain_solver_settings [dict get $ConjugateHeatTransfer::write::fluid_domain_solver_settings solver_settings] dict set solver_settings_dict solid_domain_solver_settings thermal_solver_settings [dict get $ConjugateHeatTransfer::write::solid_domain_solver_settings solver_settings] @@ -70,6 +68,8 @@ proc ::ConjugateHeatTransfer::write::GetSolverSettingsDict {} { dict set coupling_settings solid_interfaces_list $solid_interfaces_list dict set solver_settings_dict coupling_settings $coupling_settings + dict unset solver_settings_dict fluid_domain_solver_settings model_import_settings + return $solver_settings_dict } @@ -157,4 +157,63 @@ proc ::ConjugateHeatTransfer::write::InitExternalProjectParameters { } { set ConjugateHeatTransfer::write::solid_domain_solver_settings [ConvectionDiffusion::write::getParametersDict] apps::setActiveAppSoft ConjugateHeatTransfer +} + +proc ::ConjugateHeatTransfer::write::PlaceMDPAImports { projectParametersDict } { + variable mdpa_files + + set new_modelers [list] + + set modelers [dict get $projectParametersDict modelers] + # remove the modelers that import the mdpa files (name = Modelers.KratosMultiphysics.ImportMDPAModeler) + set modelers [lsearch -all -inline -not -glob $modelers *ImportMDPAModeler*] + lappend new_modelers [dict create name "Modelers.KratosMultiphysics.ImportMDPAModeler" parameters [dict create input_filename [lindex $mdpa_files 0] model_part_name "FluidModelPart"]] + lappend new_modelers [dict create name "Modelers.KratosMultiphysics.ImportMDPAModeler" parameters [dict create input_filename [lindex $mdpa_files 1] model_part_name "ThermalModelPart"]] + set modelers [concat $new_modelers $modelers] + dict set projectParametersDict modelers $modelers + return $projectParametersDict +} + +proc ::ConjugateHeatTransfer::write::ModelersPrefix { projectParametersDict } { + set modelers [dict get $projectParametersDict modelers] + set new_modelers [list] + set thermal_modelparts [dict get $projectParametersDict solver_settings solid_domain_solver_settings thermal_solver_settings processes_sub_model_part_list] + # W "Thermal modelparts: $thermal_modelparts" + foreach modeler $modelers { + set name [dict get $modeler name] + if {[string match "Modelers.KratosMultiphysics.CreateEntitiesFromGeometriesModeler" $name]} { + set new_parameters [dict create] + set new_modeler [dict create name $name parameters [dict create elements_list [dict create] conditions_list [dict create]]] + set new_element_list [list ] + foreach element [dict get $modeler parameters elements_list] { + set model_part_name [dict get $element model_part_name] + set raw_name [lindex [split $model_part_name "."] 1] + + if {$raw_name in $thermal_modelparts} { + set new_element $element + } else { + set new_element [dict create model_part_name "FluidModelPart.$raw_name" element_name [dict get $element element_name]] + } + lappend new_element_list $new_element + dict set new_parameters elements_list $new_element_list + } + set new_conditions_list [list ] + foreach condition [dict get $modeler parameters conditions_list] { + set model_part_name [dict get $condition model_part_name] + set raw_name [lindex [split $model_part_name "."] 1] + if {$raw_name in $thermal_modelparts} { + set new_condition $condition + } else { + set new_condition [dict create model_part_name "FluidModelPart.$raw_name" condition_name [dict get $condition condition_name]] + } + lappend new_conditions_list $new_condition + dict set new_parameters conditions_list $new_conditions_list + } + dict set new_modeler parameters $new_parameters + set modeler $new_modeler + } + lappend new_modelers $modeler + } + dict set projectParametersDict modelers $new_modelers + return $projectParametersDict } \ No newline at end of file From 3923dbc0bbccf7954052d356fa02d44feb460c0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20G=C3=A1rate?= Date: Fri, 11 Oct 2024 18:06:53 +0200 Subject: [PATCH 09/12] mdpa and proj params --- kratos.gid/apps/FSI/app.json | 2 +- kratos.gid/apps/FSI/write/write.tcl | 6 ++ .../apps/FSI/write/writeProjectParameters.tcl | 69 +++++++++++++++++++ kratos.gid/apps/FSI/xml/Main.spd | 4 +- kratos.gid/apps/Fluid/write/write.tcl | 8 +-- kratos.gid/apps/Structural/write/write.tcl | 9 ++- 6 files changed, 90 insertions(+), 8 deletions(-) diff --git a/kratos.gid/apps/FSI/app.json b/kratos.gid/apps/FSI/app.json index be5c132a5..e00659374 100644 --- a/kratos.gid/apps/FSI/app.json +++ b/kratos.gid/apps/FSI/app.json @@ -54,7 +54,7 @@ "properties_location": "json", "model_part_name": "Structure", "enable_dynamic_substepping": false, - "write_mdpa_mode": "entities" + "write_mdpa_mode": "geometries" }, "main_launch_file": "../../exec/MainKratos.py", "examples": "examples/examples.xml" diff --git a/kratos.gid/apps/FSI/write/write.tcl b/kratos.gid/apps/FSI/write/write.tcl index a231a5c4d..2b22f2f3c 100644 --- a/kratos.gid/apps/FSI/write/write.tcl +++ b/kratos.gid/apps/FSI/write/write.tcl @@ -27,12 +27,18 @@ proc ::FSI::write::writeModelPartEvent { } { ::Fluid::write::SetAttribute write_mdpa_mode [::FSI::GetWriteProperty write_mdpa_mode] Fluid::write::InitConditionsMap Fluid::write::SetCoordinatesByGroups 1 + set base_root_xpath [spdAux::getRoute FSIFluid] + set base_root [[customlib::GetBaseRoot] selectNodes $base_root_xpath] + set ::Fluid::write::base_root $base_root write::writeAppMDPA Fluid dict set mdpa_names Fluid "${filename}_Fluid" write::RenameFileInModel "$filename.mdpa" "[dict get $mdpa_names Fluid].mdpa" Structural::write::Init Structural::write::SetCoordinatesByGroups 1 + set base_root_xpath [spdAux::getRoute FSIStructural] + set base_root [[customlib::GetBaseRoot] selectNodes $base_root_xpath] + set ::Structural::write::base_root $base_root write::writeAppMDPA Structural dict set mdpa_names Structural "${filename}_Structural" write::RenameFileInModel "$filename.mdpa" "[dict get $mdpa_names Structural].mdpa" diff --git a/kratos.gid/apps/FSI/write/writeProjectParameters.tcl b/kratos.gid/apps/FSI/write/writeProjectParameters.tcl index cc32238f8..ac6fafdc2 100644 --- a/kratos.gid/apps/FSI/write/writeProjectParameters.tcl +++ b/kratos.gid/apps/FSI/write/writeProjectParameters.tcl @@ -24,6 +24,10 @@ proc ::FSI::write::getParametersDict { } { set output_processes [GetOutputProcessesDict] dict set projectParametersDict output_processes $output_processes + set projectParametersDict [::write::GetModelersDict $projectParametersDict] + set projectParametersDict [PlaceMDPAImports $projectParametersDict] + set projectParametersDict [ModelersPrefix $projectParametersDict] + return $projectParametersDict } @@ -188,4 +192,69 @@ proc ::FSI::write::InitExternalProjectParameters { } { set FSI::write::structure_project_parameters [Structural::write::getParametersDict] apps::setActiveAppSoft FSI +} + + +proc ::FSI::write::PlaceMDPAImports { projectParametersDict } { + variable mdpa_names + + set new_modelers [list] + + set modelers [dict get $projectParametersDict modelers] + # remove the modelers that import the mdpa files (name = Modelers.KratosMultiphysics.ImportMDPAModeler) + set modelers [lsearch -all -inline -not -glob $modelers *ImportMDPAModeler*] + lappend new_modelers [dict create name "Modelers.KratosMultiphysics.ImportMDPAModeler" parameters [dict create input_filename [dict get $mdpa_names Fluid] model_part_name "FluidModelPart"]] + lappend new_modelers [dict create name "Modelers.KratosMultiphysics.ImportMDPAModeler" parameters [dict create input_filename [dict get $mdpa_names Structural] model_part_name "Structure"]] + set modelers [concat $new_modelers $modelers] + dict set projectParametersDict modelers $modelers + return $projectParametersDict +} + +proc ::FSI::write::ModelersPrefix { projectParametersDict } { + + set modelers [dict get $projectParametersDict modelers] + set new_modelers [list] + set fluid_modelparts [dict get $projectParametersDict solver_settings fluid_solver_settings skin_parts] + set more_fluid_modelparts [dict get $projectParametersDict solver_settings fluid_solver_settings no_skin_parts] + set fluid_volume [dict get $projectParametersDict solver_settings fluid_solver_settings volume_model_part_name] + set fluid_modelparts [concat $fluid_modelparts $more_fluid_modelparts] + lappend fluid_modelparts $fluid_volume + # W "Thermal modelparts: $thermal_modelparts" + foreach modeler $modelers { + set name [dict get $modeler name] + if {[string match "Modelers.KratosMultiphysics.CreateEntitiesFromGeometriesModeler" $name]} { + set new_parameters [dict create] + set new_modeler [dict create name $name parameters [dict create elements_list [dict create] conditions_list [dict create]]] + set new_element_list [list ] + foreach element [dict get $modeler parameters elements_list] { + set model_part_name [dict get $element model_part_name] + set raw_name [lindex [split $model_part_name "."] 1] + + if {$raw_name in $fluid_modelparts} { + set new_element [dict create model_part_name "FluidModelPart.$raw_name" element_name [dict get $element element_name]] + } else { + set new_element $element + } + lappend new_element_list $new_element + dict set new_parameters elements_list $new_element_list + } + set new_conditions_list [list ] + foreach condition [dict get $modeler parameters conditions_list] { + set model_part_name [dict get $condition model_part_name] + set raw_name [lindex [split $model_part_name "."] 1] + if {$raw_name in $fluid_modelparts} { + set new_condition [dict create model_part_name "FluidModelPart.$raw_name" condition_name [dict get $condition condition_name]] + } else { + set new_condition $condition + } + lappend new_conditions_list $new_condition + dict set new_parameters conditions_list $new_conditions_list + } + dict set new_modeler parameters $new_parameters + set modeler $new_modeler + } + lappend new_modelers $modeler + } + dict set projectParametersDict modelers $new_modelers + return $projectParametersDict } \ No newline at end of file diff --git a/kratos.gid/apps/FSI/xml/Main.spd b/kratos.gid/apps/FSI/xml/Main.spd index f97bf2bd8..c48ed1964 100644 --- a/kratos.gid/apps/FSI/xml/Main.spd +++ b/kratos.gid/apps/FSI/xml/Main.spd @@ -2,7 +2,7 @@ - + @@ -12,7 +12,7 @@ - + diff --git a/kratos.gid/apps/Fluid/write/write.tcl b/kratos.gid/apps/Fluid/write/write.tcl index 4a7b2eaef..1199050cb 100644 --- a/kratos.gid/apps/Fluid/write/write.tcl +++ b/kratos.gid/apps/Fluid/write/write.tcl @@ -34,13 +34,13 @@ proc ::Fluid::write::Init { } { variable last_condition_iterator set last_condition_iterator 0 - variable fluid_base - set fluid_base "" + variable base_root + set base_root "" } # MDPA write event proc ::Fluid::write::writeModelPartEvent { } { - variable fluid_base + variable base_root # Validation set err [Validate] @@ -61,7 +61,7 @@ proc ::Fluid::write::writeModelPartEvent { } { if {[GetAttribute write_mdpa_mode] eq "geometries"} { # Write geometries # Get the list of groups in the spd - set lista [::Fluid::xml::GetListOfSubModelParts $fluid_base] + set lista [::Fluid::xml::GetListOfSubModelParts $base_root] # Write the geometries set ret [::write::writeGeometryConnectivities $lista] diff --git a/kratos.gid/apps/Structural/write/write.tcl b/kratos.gid/apps/Structural/write/write.tcl index ff75be102..a6abac5ac 100644 --- a/kratos.gid/apps/Structural/write/write.tcl +++ b/kratos.gid/apps/Structural/write/write.tcl @@ -6,6 +6,8 @@ namespace eval ::Structural::write { variable NodalConditionsGroup variable writeAttributes variable ContactsDict + variable base_root + set base_root "" } proc ::Structural::write::Init { } { @@ -38,6 +40,10 @@ proc ::Structural::write::Init { } { SetAttribute model_part_name [::Structural::GetWriteProperty model_part_name] SetAttribute output_model_part_name [::Structural::GetWriteProperty output_model_part_name] SetAttribute write_mdpa_mode [::Structural::GetWriteProperty write_mdpa_mode] + + + variable base_root + set base_root "" } # MDPA Blocks @@ -56,9 +62,10 @@ proc ::Structural::write::writeModelPartEvent { } { if {[GetAttribute write_mdpa_mode] eq "geometries"} { + variable base_root # Write geometries # Get the list of groups in the spd - set lista [spdAux::GetListOfSubModelParts] + set lista [spdAux::GetListOfSubModelParts $base_root] # Write the geometries set ret [::write::writeGeometryConnectivities $lista] From 63a2dcb46f20e3d194a8d68540e2116b842f5954 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20G=C3=A1rate?= Date: Fri, 11 Oct 2024 20:01:48 +0200 Subject: [PATCH 10/12] use_input_model_part --- kratos.gid/apps/FSI/write/writeProjectParameters.tcl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/kratos.gid/apps/FSI/write/writeProjectParameters.tcl b/kratos.gid/apps/FSI/write/writeProjectParameters.tcl index ac6fafdc2..b4398db0b 100644 --- a/kratos.gid/apps/FSI/write/writeProjectParameters.tcl +++ b/kratos.gid/apps/FSI/write/writeProjectParameters.tcl @@ -94,8 +94,10 @@ proc ::FSI::write::GetSolverSettingsDict { } { dict set solver_settings_dict coupling_settings fluid_interfaces_list $fluid_interfaces_list # Change the input_filenames - dict set solver_settings_dict structure_solver_settings model_import_settings input_filename [dict get $mdpa_names Structural] - dict set solver_settings_dict fluid_solver_settings model_import_settings input_filename [dict get $mdpa_names Fluid] + dict unset solver_settings_dict structure_solver_settings model_import_settings + dict set solver_settings_dict structure_solver_settings model_import_settings input_type use_input_model_part + dict unset solver_settings_dict fluid_solver_settings model_import_settings + dict set solver_settings_dict fluid_solver_settings model_import_settings input_type use_input_model_part # Overwrite structural timestep with fluid timestep dict set solver_settings_dict structure_solver_settings time_stepping [dict get $solver_settings_dict fluid_solver_settings time_stepping] From 2c18af7a92e03de9d4f73546f043e00cbe3a5f3a Mon Sep 17 00:00:00 2001 From: Javi Garate Date: Mon, 14 Oct 2024 12:22:28 +0200 Subject: [PATCH 11/12] minor fix --- kratos.gid/apps/ConjugateHeatTransfer/examples/BFS.tcl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kratos.gid/apps/ConjugateHeatTransfer/examples/BFS.tcl b/kratos.gid/apps/ConjugateHeatTransfer/examples/BFS.tcl index 6c66eb2b1..ed9e85b0b 100644 --- a/kratos.gid/apps/ConjugateHeatTransfer/examples/BFS.tcl +++ b/kratos.gid/apps/ConjugateHeatTransfer/examples/BFS.tcl @@ -221,7 +221,7 @@ proc ::ConjugateHeatTransfer::examples::BFS::TreeAssignation2D {args} { # Solid parts set parts [spdAux::getRoute "CNVDFFParts"] set fluidNode [customlib::AddConditionGroupOnXPath $parts Heating] - set props [list Element EulerianConvDiff$nd DENSITY 0.0 CONDUCTIVITY 10 SPECIFIC_HEAT 0.0] + set props [list Element EulerianConvDiff$nd DENSITY 0.0 CONDUCTIVITY 10.0 SPECIFIC_HEAT 0.0] spdAux::SetValuesOnBaseNode $fluidNode $props # Solid thermal initial conditions From 19773c24fa62d45928c00a4d9c6fb9d2a0eefcb8 Mon Sep 17 00:00:00 2001 From: rubenzorrilla Date: Mon, 9 Dec 2024 11:31:00 +0100 Subject: [PATCH 12/12] Adding QS-VMS axisymmetric element --- kratos.gid/apps/Fluid/xml/Elements.xml | 28 ++++++++++++++++++++++++ kratos.gid/apps/Fluid/xml/Strategies.xml | 2 +- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/kratos.gid/apps/Fluid/xml/Elements.xml b/kratos.gid/apps/Fluid/xml/Elements.xml index 69e6020a4..7d4a4f710 100644 --- a/kratos.gid/apps/Fluid/xml/Elements.xml +++ b/kratos.gid/apps/Fluid/xml/Elements.xml @@ -104,6 +104,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/kratos.gid/apps/Fluid/xml/Strategies.xml b/kratos.gid/apps/Fluid/xml/Strategies.xml index 2d20f0871..a032a6cd6 100644 --- a/kratos.gid/apps/Fluid/xml/Strategies.xml +++ b/kratos.gid/apps/Fluid/xml/Strategies.xml @@ -50,7 +50,7 @@ - +