Closed WPK4FEM closed 1 month ago
Tried with the structural mechanics application and seemingly the master slave constraint works there.
When converted to GeoMechanicsApplication the process AssignMasterSlaveConstraintsToNeighboursUtility seems to run correctly, but the linear equation solver does not find MasterSlaveConstraints on the model part that is given to the linear equation solver.
The computing_model_part_name is defined in geomechanics_solver.py with the contents "porous_computational_model_part". When using this name in the process definition for the Master Slave constraints, the mechanism can be used within GeoMechanicsApplication. ,{ "python_module" : "assign_master_slave_constraints_to_neighbours_process", "kratos_module" : "KratosMultiphysics", "process_name" : "AssignMasterSlaveConstraintsToNeighboursUtility", "Parameters" : { "model_part_name" : "PorousDomain.porous_computational_model_part", "slave_model_part_name" : "PorousDomain.SlaveTrial", "master_model_part_name" : "PorousDomain.MasterTrial", "variable_names" : ["DISPLACEMENT","WATER_PRESSURE"], "search_radius" : 0.25, "minimum_number_of_neighbouring_nodes": 2, "reform_constraints_at_each_step" : false } }
In this respect GeoMechanicsApplication differs from StructuralMechanicsApplication. In StructuralMechanicsApplication the model part defined with "model_part_name": "Structure", on the ProjectParameters.json file is sent to the linear equation solver. In GeoMechanicsApplication the definition is usually: "model_part_name": "PorousDomain", but the linear equation solver receives PorousDomain.porous_computational_model_part. A further difference is that GeoMechanicsApplication uses lists of submodelparts which are processed in ExecuteCheckAndPrepare. An equivalent for that we have no found in StructuralMechanicsApplication, but there all model parts used in processes seem to automagically be taken into account.
The attached zip archive contains a working ( on 20-08-2024 ) test example for GeoMechanicsApplication.
The master-slave constraints have been added to the quay wall model by Wijtze Pieter. This issue can now be closed.
There is a requirement to have nodal connectivities \ constraints when the interface \ sheetpile is not in place.
Refinement 13/08/2024
This will be an investigation to first understand how the existing mechanism works, second if it works with multi stage and boundary conditions and third how do we want to implement it.
The existing mechanism that we may want to use here is called multi-point constraint (MPC) and it has been documented here.
Likely candidates to provide the desired functionality: AssignMasterSlaveConstraintsToNeighboursProcess AssignMasterSlaveConstraintsToNeighboursUtility