From becc476a6a86a1485fc9fd0278bbf7397ecdc245 Mon Sep 17 00:00:00 2001 From: "V. Singer" Date: Wed, 6 Nov 2024 07:43:10 +0100 Subject: [PATCH 01/14] update references --- applications/MPMApplication/README.md | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/applications/MPMApplication/README.md b/applications/MPMApplication/README.md index ce26f97c651e..2df10cb9ab78 100644 --- a/applications/MPMApplication/README.md +++ b/applications/MPMApplication/README.md @@ -49,11 +49,17 @@ Particle or meshfree methods are a category of methods where the state of a syst The MPM is an hybrid thechnique which uses a fixed background grid (or mesh) for solving the governing equations in a FEM fashion and set of material particles (MP) for storing all the hystorical variables and material informations. MPM has gained a remarkably increasing popularity due to its capability in simulating problems involving historically dependent materials and large deformations. As MPM is able to combine the strengths of Eulerian and Lagrangian methods, it has been utilized in various engineering applications and industrial purposes, in particular in geomechanics and environmental fluid dynamics field. Recommended references for implementation details of MPM in Kratos: +- Singer, V.; Partitioned Coupling Strategies to Simulate the Impact of Granular Mass Flows on Flexible Protective Structures; PhD Thesis, Technical University of Munich (2024) +- Singer, V.; Teschemacher T.; Larese A.; Wüchner R. Bletzinger K.-U.; Lagrange multiplier imposition of non-conforming essential boundary conditions in implicit material point method. Comput Mech 73, 1311–1333 (2024). https://doi.org/10.1007/s00466-023-02412-w +- Singer, V.; Sautter, K.B.; Larese, A.; Wüchner, R.; Bletzinger K.-U.; Partitioned Coupling Approaches for the Simulation of Natural Hazards Impacting Protective Structures. VIII International Conference on Particle-Based Methods (2023); doi: https://doi.org/10.23967/c.particles.2023.002 +- Singer, V.; Larese, A.; Wüchner, R.; Bletzinger K.-U.; Partitioned MPM-FEM Coupling Approach for Advanced Numerical Simulation of Mass-Movement Hazards Impacting Flexible Protective Structures, X International Conference on Computational Methods for Coupled Problems in Science and Engineering (2023); doi: https://doi.org/10.23967/c.coupled.2023.026 - Singer, V.; Sautter, K.B., Larese, A., Wüchner, R.; Bletzinger, K.U.; A partitioned material point method and discrete element method coupling scheme, Advanced Modeling and Simulation in Engineering Sciences, 9(16), (2022); DOI: https://doi.org/10.1186/s40323-022-00229-5 -- Chandra, B., Singer, V., Teschemacher, T., Wuechner, R., & Larese, A. (2021). Nonconforming Dirichlet boundary conditions in implicit material point method by means of penalty augmentation. Acta Geotechnica, 16(8), 2315-2335. DOI: 10.1007/s11440-020-01123-3 -- Wilson, P., Wüchner, R., & Fernando, D. (2021). Distillation of the material point method cell crossing error leading to a novel quadrature‐based C 0 remedy. International Journal for Numerical Methods in Engineering, 122(6), 1513-1537. -- Iaconeta, I., Larese, A., Rossi, R., & Oñate, E. (2018). A stabilized mixed implicit Material Point Method for non-linear incompressible solid mechanics. *Computational Mechanics*, 1-18. DOI 10.1007/s00466-018-1647-9 -- Iaconeta, I., Larese, A., Rossi, R., & Zhiming, G. (2016). Comparison of a material point method and a Galerkin meshfree method for the simulation of cohesive-frictional materials. *Materials*, 10(10), p. 1150. doi: 10.3390/ma10101150 +- Wilson, P.; A computational impact analysis approach leveraging non-conforming spatial, temporal and methodological discretisations; PhD Thesis, University of Queensland (2022); doi: https://doi.org/10.14264/3e10f66 +- Singer, V.; Bodhinanda, C.; Larese, A.; Wüchner, R.; Bletzinger K.-U.; A Staggered Material Point Method and Finite Element Method Coupling Scheme Using Gauss Seidel Communication Pattern, 9th edition of the International Conference on Computational Methods for Coupled Problems in Science and Engineering (2021); doi: https://doi.org/10.23967/coupled.2021.006 +- Chandra, B., Singer, V., Teschemacher, T., Wuechner, R., & Larese, A. (2021). Nonconforming Dirichlet boundary conditions in implicit material point method by means of penalty augmentation. Acta Geotechnica, 16(8), 2315-2335. DOI: https://doi.org/10.1007/s11440-020-01123-3 +- Wilson, P., Wüchner, R., & Fernando, D. (2021). Distillation of the material point method cell crossing error leading to a novel quadrature‐based C 0 remedy. International Journal for Numerical Methods in Engineering, 122(6), 1513-1537, doi:https://doi.org/10.1002/nme.6588 +- Iaconeta, I., Larese, A., Rossi, R., & Oñate, E. (2018). A stabilized mixed implicit Material Point Method for non-linear incompressible solid mechanics. *Computational Mechanics*, 1-18. DOI https://doi.org/10.1007/s00466-018-1647-9 +- Iaconeta, I., Larese, A., Rossi, R., & Zhiming, G. (2016). Comparison of a material point method and a Galerkin meshfree method for the simulation of cohesive-frictional materials. *Materials*, 10(10), p. 1150. doi: https://doi.org/10.3390/ma10101150 - ## Features From 4a3075fe5ae59f57bbd1f3e186258a9dfc46c6ea Mon Sep 17 00:00:00 2001 From: "V. Singer" Date: Wed, 6 Nov 2024 08:00:02 +0100 Subject: [PATCH 02/14] update features --- applications/MPMApplication/README.md | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/applications/MPMApplication/README.md b/applications/MPMApplication/README.md index 2df10cb9ab78..7efde8c00ba8 100644 --- a/applications/MPMApplication/README.md +++ b/applications/MPMApplication/README.md @@ -65,11 +65,11 @@ Recommended references for implementation details of MPM in Kratos: The following features are currently available and subject to development within the MPM Application: - Formulation: - * Irreducible formulations (U displacement based) + * Irreducible formulations (u displacement based) * Mixed UP formulations - Element types: - * Updated Lagrangian elements - triangular and quadrilatera (2D) and tetrahedral and hexahedral (3D), structured and unstructured, using classical or partitioned quadrature rules (this latter limited to explicit MPM) + * Updated Lagrangian elements - triangular and quadrilateral (2D) and tetrahedral and hexahedral (3D), structured and unstructured, using classical or partitioned quadrature rules (this latter limited to explicit MPM) * Updated Lagrangian axis-symmetric elements - triangular and quadrilateral (2D), structured and unstructured * Updated Lagrangian mixed UP elements - triangular (2D) and tetrahedral (3D), structured and unstructured, stabilized using Variational Multiscale Stabilization or Pressure Projection techniques @@ -84,22 +84,29 @@ The following features are currently available and subject to development within * Johnson Cook Thermal Plastic (just for explicit MPM) - A set of Boundary conditions: - * Grid-Based Conditions (conforming): applied directly on the background nodes + * Grid-Based Conditions (conforming): applied directly at the background nodes * Neumann: Point load * Neumann: Line load (a distributed load applied over a line) * Neumann: Surface load (a distributed load applied over a face) - * Dirichlet: Slip and No slip condition on arbitrary boundary. - * Material Point-Based Conditions (non conforming): applied in moveable boundary particles - * Neumann: Moving point load - * Dirichlet: Imposition of displacements (homogeneous and inhomogeneous) using penalty method + * Dirichlet: Slip and non-slip conditions for arbitrary inclination. + * Material Point-Based Conditions (non-conforming): applied on movable boundary particles + * Neumann: + * moving point load + * interface condition for partitioned coupling with DEM + * Dirichlet: fixed, slip or contact condition + * penalty method, + * Lagrange multiplier method + * perturbed Lagrangian method + * interface condition for partitioned coupling with FEM, RBS,... - Strategies and schemes: * Implicit - Newmark/Bossak prediction and correction scheme for static, quasi-static, and dynamic problems * Explicit - Other features: - * Partitioned coupling with Finite Element Method - weak and strong coupling of nonconforming discretization - * Partitioned coupling with the Discrete Element Method + * Partitioned coupling with Finite Element Method (FEM) - weak and strong coupling of nonconforming discretization + * Partitioned coupling with the Discrete Element Method (DEM) + * Partitioned coupling with the Rigid Body Solver (RBS) * material point erase features - to delete material points outside the interest domain ## License @@ -111,3 +118,4 @@ The MPM Application is OPEN SOURCE. The main code and program structure is avail * **Antonia Larese** - *Group Leader* - [antonia.larese@unipd.it](mailto:antonia.larese@unipd.it) * **Veronika Singer** - *Developer* - [veronika.singer@tum.de](mailto:veronika.singer@tum.de) * **Laura Moreno** - *Developer* - [laura.morenomartinez@unipd.it](mailto:laura.morenomartinez@unipd.it) +* **Andi Makarim Katili** - *Developer* - [andi.katili@tum.de](mailto:andi.katili@tum.de) From a19e7d40d2b71be614b5d75ef1f070ce22a16cd2 Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Wed, 6 Nov 2024 09:32:56 +0100 Subject: [PATCH 03/14] More updates to `README.md` --- applications/MPMApplication/README.md | 176 ++++++++++++++------------ 1 file changed, 93 insertions(+), 83 deletions(-) diff --git a/applications/MPMApplication/README.md b/applications/MPMApplication/README.md index 7efde8c00ba8..2e3de599156b 100644 --- a/applications/MPMApplication/README.md +++ b/applications/MPMApplication/README.md @@ -1,117 +1,127 @@ # MPM Application -This application implements the Material Point Method (MPM) with main motivations of simulating non-linear large deformable materials, such as free-surface flows, geomechanical phenomena, and extreme events involving impact, penetration, fragmentation, blast, multi-phase interaction, failure evolution, etc. +This application implements the **Material Point Method (MPM)** with main motivations of simulating non-linear large deformable materials, such as free-surface flows, geomechanical phenomena, and extreme events involving impact, penetration, fragmentation, blast, multi-phase interaction, failure evolution, etc.

+## Theory -## Getting Started +Particle or meshfree methods are a category of methods where the state of a system is represented by a set of particles, without a fixed connectivity; hence, making such methods suitable for the analysis of moving discontinuities and large deformations with breaking and fragmentation. This approach does not suffer from the mesh distortion and entanglement issues posed by other Lagrangian discretizations such as the finite element method. -This application is part of the Kratos Multiphysics Platform. Instructions on how to download, install and run the software in your local machine for development and testing purposes are available for both Linux and Windows distributions [Installation page](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md). +The **Material Point Method** (MPM) is an hybrid thechnique which uses a fixed background grid (or mesh) for solving the governing equations in a FEM fashion and set of material particles (MP) for storing all the hystorical variables and material informations. MPM has gained a remarkably increasing popularity due to its capability in simulating problems involving historically dependent materials and large deformations. As MPM is able to combine the strengths of Eulerian and Lagrangian methods, it has been utilized in various engineering applications and industrial purposes, in particular in geomechanics and environmental fluid dynamics field. -### Prerequisites +## Getting Started -Build Kratos and check the [configuration files](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md#configuration-scripts-examples) +This application is part of the Kratos Multiphysics framework and it can be obtained either by installing the Kratos binaries with `pip` (suggested for users that want to use the application like a black-box) or by downloading the source code and compiling it (suggested for developers). +### Getting Binaries with `pip` (users) -In LINUX: check that in the /path_to_kratos/scripts/configure.sh the followinglines are written: +Kratos binaries are available for Linux, Windows and MacOS and can be obtained with `pip`. Open the terminal and run the following command: -``` cmake --DMPM_APPLICATION=ON --DLINEAR_SOLVERS_APPLICATION=ON +```bash +python3 -m pip install KratosMPMApplication ``` -In WINDOWS: check that in the /path_to_kratos/scripts/configute.bat the following lines appears: +This command will install `KratosMultiphysics` (Kratos Multiphysics Core), `KratosMPMApplication` (application implementing MPM) and `KratosLinearSolversApplication` (dependency of MPMApplication). -```set KRATOS_APPLICATIONS= -CALL :add_app %KRATOS_APP_DIR%\LinearSolversApplication; -CALL :add_app %KRATOS_APP_DIR%\MPMApplication; -``` +### Build and Compile Source Code (developers) -so the MPM application is compiled along with auxiliary linear solvers required. +Instructions on how to download, install and run the software in your local machine for development and testing purposes are available for Linux, Windows and MacOS distributions in the [installation page](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md). -## Examples -Some use-cases and validation examples are available in the MPM section of the [Examples](https://kratosmultiphysics.github.io/Examples/) repository. Also, some unit tests of the main features can be found in the [tests](https://github.com/KratosMultiphysics/Kratos/tree/master/applications/MPMApplication/tests) folder. +In particular, be sure to compile the `MPMApplication` and the auxiliary `LinearSolversApplication`: -### GiD Interface -A GiD user interface for the MPM application is also available. It is located in GiD interface repository in [GiD interface repository](https://github.com/KratosMultiphysics/GiDInterface/tree/master/). +* in **Linux**, check that in the `/path_to_kratos/scripts/standard_configure.sh` the following lines are written: + ```bash + export KRATOS_APPLICATIONS= + add_app ${KRATOS_APP_DIR}/MPMApplication + add_app ${KRATOS_APP_DIR}/LinearSolversApplication + ``` -It requires [GiD](https://www.gidhome.com/) - Pre and Post Processing software. +* in **Windows**, check that in the `/path_to_kratos/scripts/standard_configute.bat` the following lines appears: + ```console + set KRATOS_APPLICATIONS= + CALL :add_app %KRATOS_APP_DIR%\MPMApplication; + CALL :add_app %KRATOS_APP_DIR%\LinearSolversApplication; + ``` -## Theory +## Examples +Some use-cases and validation examples are available in the MPM section of the [Examples](https://kratosmultiphysics.github.io/Examples/) repository. Also, some unit tests of the main features can be found in the [tests](https://github.com/KratosMultiphysics/Kratos/tree/master/applications/MPMApplication/tests) folder. -Particle or meshfree methods are a category of methods where the state of a system is represented by a set of particles, without a fixed connectivity; hence, making such methods suitable for the analysis of moving discontinuities and large deformations with breaking and fragmentation. This approach does not suffer from the mesh distortion and entanglement issues posed by other Lagrangian discretizations such as the finite element method. +## GiD Interface -### Material Point Method +A GUI (Graphic User Interface) for the MPM application is also available within the pre and post processing software [GiD](https://www.gidhome.com/). Instructions on how to download and install it are located in the `GiDInterface` [GitHub repository](https://github.com/KratosMultiphysics/GiDInterface/tree/master/). A basic knowledge of GiD is required. -The MPM is an hybrid thechnique which uses a fixed background grid (or mesh) for solving the governing equations in a FEM fashion and set of material particles (MP) for storing all the hystorical variables and material informations. MPM has gained a remarkably increasing popularity due to its capability in simulating problems involving historically dependent materials and large deformations. As MPM is able to combine the strengths of Eulerian and Lagrangian methods, it has been utilized in various engineering applications and industrial purposes, in particular in geomechanics and environmental fluid dynamics field. +## Features + +The following features are currently available and subject to development within the `MPMApplication`. + +**Formulations** +* Irreducible formulation (u displacement based) +* Mixed UP (displacement/pressure) formulation + +**Element types** +* Updated Lagrangian elements - triangular and quadrilateral (2D) and tetrahedral and hexahedral (3D), structured and unstructured, using classical or partitioned quadrature rules (this latter limited to explicit MPM) +* Updated Lagrangian axis-symmetric elements - triangular and quadrilateral (2D), structured and unstructured +* Updated Lagrangian mixed UP elements - triangular (2D) and tetrahedral (3D), structured and unstructured, stabilized using Variational Multiscale Stabilization (VMS) or Pressure Projection techniques + +**Constitutive laws** +* Linear isotropic elastic materials - plane strain, plane stress, axis-symmetric, and 3D +* Hyperelastic Neo-Hookean laws - finite strain, plane strain, axis-symmetric, and 3D +* Elasto-plastic laws: + * Mohr Coulomb - finite strain, associative and non-associative, plane strain, axis-symmetric, and 3D + * Mohr Coulomb with Strain Softening - finite strain, associative and non-associative, plane strain, axis-symmetric, and 3D +* Critical state laws: + * Modified Cam-Clay - finite strain, plane strain, axis-symmetric, and 3D + * Johnson Cook Thermal Plastic (just for explicit MPM) + +**Boundary conditions** +* Grid-Based Conditions (conforming): applied directly at the background nodes + * Neumann: Point load + * Neumann: Line load (a distributed load applied over a line) + * Neumann: Surface load (a distributed load applied over a face) + * Dirichlet: Slip and non-slip conditions for arbitrary inclination +* Material Point-Based Conditions (non-conforming): applied on movable boundary particles + * Neumann: + * moving point load + * interface condition for partitioned coupling with DEM + * Dirichlet: fixed, slip or contact condition + * penalty method + * Lagrange multiplier method + * perturbed Lagrangian method + * interface condition for partitioned coupling with FEM, RBS,... + +**Time schemes** +* Implicit - Newmark/Bossak prediction and correction scheme for static, quasi-static, and dynamic problems +* Explicit + +**Other features** +* Partitioned coupling with Finite Element Method (FEM) - weak and strong coupling of nonconforming discretization +* Partitioned coupling with the Discrete Element Method (DEM) +* Partitioned coupling with the Rigid Body Solver (RBS) +* Material point erase features - to delete material points outside the interest domain + + +## References Recommended references for implementation details of MPM in Kratos: -- Singer, V.; Partitioned Coupling Strategies to Simulate the Impact of Granular Mass Flows on Flexible Protective Structures; PhD Thesis, Technical University of Munich (2024) -- Singer, V.; Teschemacher T.; Larese A.; Wüchner R. Bletzinger K.-U.; Lagrange multiplier imposition of non-conforming essential boundary conditions in implicit material point method. Comput Mech 73, 1311–1333 (2024). https://doi.org/10.1007/s00466-023-02412-w -- Singer, V.; Sautter, K.B.; Larese, A.; Wüchner, R.; Bletzinger K.-U.; Partitioned Coupling Approaches for the Simulation of Natural Hazards Impacting Protective Structures. VIII International Conference on Particle-Based Methods (2023); doi: https://doi.org/10.23967/c.particles.2023.002 -- Singer, V.; Larese, A.; Wüchner, R.; Bletzinger K.-U.; Partitioned MPM-FEM Coupling Approach for Advanced Numerical Simulation of Mass-Movement Hazards Impacting Flexible Protective Structures, X International Conference on Computational Methods for Coupled Problems in Science and Engineering (2023); doi: https://doi.org/10.23967/c.coupled.2023.026 -- Singer, V.; Sautter, K.B., Larese, A., Wüchner, R.; Bletzinger, K.U.; A partitioned material point method and discrete element method coupling scheme, Advanced Modeling and Simulation in Engineering Sciences, 9(16), (2022); DOI: https://doi.org/10.1186/s40323-022-00229-5 -- Wilson, P.; A computational impact analysis approach leveraging non-conforming spatial, temporal and methodological discretisations; PhD Thesis, University of Queensland (2022); doi: https://doi.org/10.14264/3e10f66 -- Singer, V.; Bodhinanda, C.; Larese, A.; Wüchner, R.; Bletzinger K.-U.; A Staggered Material Point Method and Finite Element Method Coupling Scheme Using Gauss Seidel Communication Pattern, 9th edition of the International Conference on Computational Methods for Coupled Problems in Science and Engineering (2021); doi: https://doi.org/10.23967/coupled.2021.006 -- Chandra, B., Singer, V., Teschemacher, T., Wuechner, R., & Larese, A. (2021). Nonconforming Dirichlet boundary conditions in implicit material point method by means of penalty augmentation. Acta Geotechnica, 16(8), 2315-2335. DOI: https://doi.org/10.1007/s11440-020-01123-3 -- Wilson, P., Wüchner, R., & Fernando, D. (2021). Distillation of the material point method cell crossing error leading to a novel quadrature‐based C 0 remedy. International Journal for Numerical Methods in Engineering, 122(6), 1513-1537, doi:https://doi.org/10.1002/nme.6588 -- Iaconeta, I., Larese, A., Rossi, R., & Oñate, E. (2018). A stabilized mixed implicit Material Point Method for non-linear incompressible solid mechanics. *Computational Mechanics*, 1-18. DOI https://doi.org/10.1007/s00466-018-1647-9 -- Iaconeta, I., Larese, A., Rossi, R., & Zhiming, G. (2016). Comparison of a material point method and a Galerkin meshfree method for the simulation of cohesive-frictional materials. *Materials*, 10(10), p. 1150. doi: https://doi.org/10.3390/ma10101150 -- -## Features -The following features are currently available and subject to development within the MPM Application: -- Formulation: - * Irreducible formulations (u displacement based) - * Mixed UP formulations - -- Element types: - * Updated Lagrangian elements - triangular and quadrilateral (2D) and tetrahedral and hexahedral (3D), structured and unstructured, using classical or partitioned quadrature rules (this latter limited to explicit MPM) - * Updated Lagrangian axis-symmetric elements - triangular and quadrilateral (2D), structured and unstructured - * Updated Lagrangian mixed UP elements - triangular (2D) and tetrahedral (3D), structured and unstructured, stabilized using Variational Multiscale Stabilization or Pressure Projection techniques - -- Constitutive laws: - * Linear isotropic elastic materials - plane strain, plane stress, axis-symmetric, and 3D - * Hyperelastic Neo-Hookean laws - finite strain, plane strain, axis-symmetric, and 3D - * Elasto-plastic laws: - * Mohr Coulomb - finite strain, associative and non-associative, plane strain, axis-symmetric, and 3D - * Mohr Coulomb with Strain Softening - finite strain, associative and non-associative, plane strain, axis-symmetric, and 3D - * Critical state laws: - * Modified Cam-Clay - finite strain, plane strain, axis-symmetric, and 3D - * Johnson Cook Thermal Plastic (just for explicit MPM) - -- A set of Boundary conditions: - * Grid-Based Conditions (conforming): applied directly at the background nodes - * Neumann: Point load - * Neumann: Line load (a distributed load applied over a line) - * Neumann: Surface load (a distributed load applied over a face) - * Dirichlet: Slip and non-slip conditions for arbitrary inclination. - * Material Point-Based Conditions (non-conforming): applied on movable boundary particles - * Neumann: - * moving point load - * interface condition for partitioned coupling with DEM - * Dirichlet: fixed, slip or contact condition - * penalty method, - * Lagrange multiplier method - * perturbed Lagrangian method - * interface condition for partitioned coupling with FEM, RBS,... - -- Strategies and schemes: - * Implicit - Newmark/Bossak prediction and correction scheme for static, quasi-static, and dynamic problems - * Explicit - -- Other features: - * Partitioned coupling with Finite Element Method (FEM) - weak and strong coupling of nonconforming discretization - * Partitioned coupling with the Discrete Element Method (DEM) - * Partitioned coupling with the Rigid Body Solver (RBS) - * material point erase features - to delete material points outside the interest domain +* Singer, V., (2024). **Partitioned Coupling Strategies to Simulate the Impact of Granular Mass Flows on Flexible Protective Structures**, *PhD Thesis*, Technical University of Munich. +* Singer, V., Teschemacher, T., Larese, A., Wüchner, R., Bletzinger, K.U. (2024). **Lagrange multiplier imposition of non-conforming essential boundary conditions in implicit Material Point Method**, *Computational Mechanics*, 73, 1311–1333 DOI: 10.1007/s00466-023-02412-w. +* Singer, V., Sautter, K.B., Larese, A., Wüchner, R., Bletzinger K.-U., (2023) **Partitioned Coupling Approaches for the Simulation of Natural Hazards Impacting Protective Structures**, *VIII International Conference on Particle-Based Methods*. DOI: 10.23967/c.particles.2023.002. +* Singer, V., Larese, A., Wüchner, R., Bletzinger K.-U., (2023). **Partitioned MPM-FEM Coupling Approach for Advanced Numerical Simulation of Mass-Movement Hazards Impacting Flexible Protective Structures**, *X International Conference on Computational Methods for Coupled Problems in Science and Engineering*. DOI: 10.23967/c.coupled.2023.026. +* Singer, V., Sautter, K.B., Larese, A., Wüchner, R., Bletzinger, K.-U. (2022). **A partitioned material point method and discrete element method coupling scheme**, *Advanced Modeling and Simulation in Engineering Sciences*, 9(16). DOI: doi.org/10.1186/s40323-022-00229-5. +* Wilson, P., (2022). **A computational impact analysis approach leveraging non-conforming spatial, temporal and methodological discretisations**, *PhD Thesis*, University of Queensland. DOI: 10.14264/3e10f66. +* Singer, V., Bodhinanda, C., Larese, A., Wüchner, R., Bletzinger K.-U., (2021). **A Staggered Material Point Method and Finite Element Method Coupling Scheme Using Gauss Seidel Communication Pattern**, *9th edition of the International Conference on Computational Methods for Coupled Problems in Science and Engineering*. DOI: 10.23967/coupled.2021.006. +* Chandra, B., Singer, V., Teschemacher, T., Wuechner, R., & Larese, A. (2021). **Nonconforming Dirichlet boundary conditions in implicit material point method by means of penalty augmentation**, *Acta Geotechnica*, 16(8), 2315-2335. DOI: 10.1007/s11440-020-01123-3. +* Wilson, P., Wüchner, R., & Fernando, D. (2021). **Distillation of the material point method cell crossing error leading to a novel quadrature‐based C0 remedy**, *International Journal for Numerical Methods in Engineering*, 122(6), 1513-1537. DOI: 10.1002/nme.6588. +* Iaconeta, I., Larese, A., Rossi, R., & Oñate, E. (2018). **A stabilized mixed implicit Material Point Method for non-linear incompressible solid mechanics**, *Computational Mechanics*, 1-18. DOI: 10.1007/s00466-018-1647-9. +* Iaconeta, I., Larese, A., Rossi, R., & Zhiming, G. (2016). **Comparison of a material point method and a Galerkin meshfree method for the simulation of cohesive-frictional materials**, *Materials*, 10(10), p. 1150. DOI: 10.3390/ma10101150. ## License -The MPM Application is OPEN SOURCE. The main code and program structure is available and aimed to grow with the need of any user willing to expand it. The BSD (Berkeley Software Distribution) licence allows to use and distribute the existing code without any restriction, but with the possibility to develop new parts of the code on an open or close basis depending on the developers. +The `MPMApplication` is **OPEN SOURCE**. The main code and program structure is available and aimed to grow with the need of any user willing to expand it. The **BSD** (Berkeley Software Distribution) licence allows to use and distribute the existing code without any restriction, but with the possibility to develop new parts of the code on an open or close basis depending on the developers. ## Contact From 1fe574d06715bb258241c5268b7743ad53272245 Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Wed, 6 Nov 2024 09:39:55 +0100 Subject: [PATCH 04/14] update laura's email --- applications/MPMApplication/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/MPMApplication/README.md b/applications/MPMApplication/README.md index 2e3de599156b..2461931ee14f 100644 --- a/applications/MPMApplication/README.md +++ b/applications/MPMApplication/README.md @@ -127,5 +127,5 @@ The `MPMApplication` is **OPEN SOURCE**. The main code and program structure is * **Antonia Larese** - *Group Leader* - [antonia.larese@unipd.it](mailto:antonia.larese@unipd.it) * **Veronika Singer** - *Developer* - [veronika.singer@tum.de](mailto:veronika.singer@tum.de) -* **Laura Moreno** - *Developer* - [laura.morenomartinez@unipd.it](mailto:laura.morenomartinez@unipd.it) +* **Laura Moreno** - *Developer* - [laura.morenomartinez@ua.es](mailto:laura.morenomartinez@ua.es) * **Andi Makarim Katili** - *Developer* - [andi.katili@tum.de](mailto:andi.katili@tum.de) From 831c96575d1458c7ac8cbc3bcf872fd57267d49e Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Wed, 6 Nov 2024 09:50:27 +0100 Subject: [PATCH 05/14] add toc --- applications/MPMApplication/README.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/applications/MPMApplication/README.md b/applications/MPMApplication/README.md index 2461931ee14f..52f5db1b6e69 100644 --- a/applications/MPMApplication/README.md +++ b/applications/MPMApplication/README.md @@ -1,5 +1,19 @@ # MPM Application +- [Overview](#overview) +- [Theory](#theory) +- [Getting Started](#getting-started) + - [Getting Binaries with `pip` (users)](#getting-binaries-with-pip-users) + - [Build and Compile Source Code (developers)](#build-and-compile-source-code-developers) +- [Examples](#examples) +- [GiD Interface](#gid-interface) +- [Features](#features) +- [References](#references) +- [License](#license) +- [Contact](#contact) + +## Overview + This application implements the **Material Point Method (MPM)** with main motivations of simulating non-linear large deformable materials, such as free-surface flows, geomechanical phenomena, and extreme events involving impact, penetration, fragmentation, blast, multi-phase interaction, failure evolution, etc.

From 845ffd8a5ece92d18676af9b1a090307b31aa26e Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Wed, 6 Nov 2024 10:26:53 +0100 Subject: [PATCH 06/14] update docs --- .../MPM_Application/General/Overview.md | 166 ++++++++++-------- 1 file changed, 95 insertions(+), 71 deletions(-) diff --git a/docs/pages/Applications/MPM_Application/General/Overview.md b/docs/pages/Applications/MPM_Application/General/Overview.md index 74acfe8ffd11..a3a90a449c0e 100644 --- a/docs/pages/Applications/MPM_Application/General/Overview.md +++ b/docs/pages/Applications/MPM_Application/General/Overview.md @@ -6,106 +6,130 @@ sidebar: mpm_application summary: --- -This application implements the Material Point Method (MPM) with main motivations of simulating non-linear large deformable materials, such as free-surface flows, geomechanical phenomena, and extreme events involving impact, penetration, fragmentation, blast, multi-phase interaction, failure evolution, etc. +This application implements the **Material Point Method (MPM)** with main motivations of simulating non-linear large deformable materials, such as free-surface flows, geomechanical phenomena, and extreme events involving impact, penetration, fragmentation, blast, multi-phase interaction, failure evolution, etc. ![MPMApplication](https://user-images.githubusercontent.com/51473791/191960884-1f1c5a0c-efec-40ca-ac6d-2d53b5530739.gif) -## Getting Started +## Theory -This application is part of the Kratos Multiphysics Platform. Instructions on how to download, install and run the software in your local machine for development and testing purposes are available for both Linux and Windows distributions [Installation page](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md). +Particle or meshfree methods are a category of methods where the state of a system is represented by a set of particles, without a fixed connectivity; hence, making such methods suitable for the analysis of moving discontinuities and large deformations with breaking and fragmentation. This approach does not suffer from the mesh distortion and entanglement issues posed by other Lagrangian discretizations such as the finite element method. -**Prerequisites** +The **Material Point Method** (MPM) is an hybrid thechnique which uses a fixed background grid (or mesh) for solving the governing equations in a FEM fashion and set of material particles (MP) for storing all the hystorical variables and material informations. MPM has gained a remarkably increasing popularity due to its capability in simulating problems involving historically dependent materials and large deformations. As MPM is able to combine the strengths of Eulerian and Lagrangian methods, it has been utilized in various engineering applications and industrial purposes, in particular in geomechanics and environmental fluid dynamics field. -Build Kratos and check the [configuration files](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md#configuration-scripts-examples) +## Getting Started -In LINUX: check that in the /path_to_kratos/scripts/configure.sh the followinglines are written: +This application is part of the Kratos Multiphysics framework and it can be obtained either by installing the Kratos binaries with `pip` (suggested for users that want to use the application like a black-box) or by downloading the source code and compiling it (suggested for developers). -``` cmake --DMPM_APPLICATION=ON --DLINEAR_SOLVERS_APPLICATION=ON -``` +### Getting Binaries with `pip` (users) -In WINDOWS: check that in the /path_to_kratos/scripts/configute.bat the following lines appears: +Kratos binaries are available for Linux, Windows and MacOS and can be obtained with `pip`. Open the terminal and run the following command: -```set KRATOS_APPLICATIONS= -CALL :add_app %KRATOS_APP_DIR%\LinearSolversApplication; -CALL :add_app %KRATOS_APP_DIR%\MPMApplication; +```bash +python3 -m pip install KratosMPMApplication ``` -so the MPM application is compiled along with auxiliary linear solvers required. +This command will install `KratosMultiphysics` (Kratos Multiphysics Core), `KratosMPMApplication` (application implementing MPM) and `KratosLinearSolversApplication` (dependency of MPMApplication). -## Examples -Some use-cases and validation examples are available in the MPM section of the [Examples](https://kratosmultiphysics.github.io/Examples/) repository. Also, some unit tests of the main features can be found in the [tests](https://github.com/KratosMultiphysics/Kratos/tree/master/applications/MPMApplication/tests) folder. +### Build and Compile Source Code (developers) -**GiD Interface** +Instructions on how to download, install and run the software in your local machine for development and testing purposes are available for Linux, Windows and MacOS distributions in the [installation page](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md). -A GiD user interface for the MPM application is also available. It is located in GiD interface repository in [GiD interface repository](https://github.com/KratosMultiphysics/GiDInterface/tree/master/). -It requires [GiD](https://www.gidhome.com/) - Pre and Post Processing software. +In particular, be sure to compile the `MPMApplication` and the auxiliary `LinearSolversApplication`: -## Theory +* in **Linux**, check that in the `/path_to_kratos/scripts/standard_configure.sh` the following lines are written: + ```bash + export KRATOS_APPLICATIONS= + add_app ${KRATOS_APP_DIR}/MPMApplication + add_app ${KRATOS_APP_DIR}/LinearSolversApplication + ``` -Particle or meshfree methods are a category of methods where the state of a system is represented by a set of particles, without a fixed connectivity; hence, making such methods suitable for the analysis of moving discontinuities and large deformations with breaking and fragmentation. This approach does not suffer from the mesh distortion and entanglement issues posed by other Lagrangian discretizations such as the finite element method. +* in **Windows**, check that in the `/path_to_kratos/scripts/standard_configute.bat` the following lines appears: + ```console + set KRATOS_APPLICATIONS= + CALL :add_app %KRATOS_APP_DIR%\MPMApplication; + CALL :add_app %KRATOS_APP_DIR%\LinearSolversApplication; + ``` -**Material Point Method** +## Examples +Some use-cases and validation examples are available in the MPM section of the [Examples](https://kratosmultiphysics.github.io/Examples/) repository. Also, some unit tests of the main features can be found in the [tests](https://github.com/KratosMultiphysics/Kratos/tree/master/applications/MPMApplication/tests) folder. -The MPM is an hybrid thechnique which uses a fixed background grid (or mesh) for solving the governing equations in a FEM fashion and set of material particles (MP) for storing all the hystorical variables and material informations. MPM has gained a remarkably increasing popularity due to its capability in simulating problems involving historically dependent materials and large deformations. As MPM is able to combine the strengths of Eulerian and Lagrangian methods, it has been utilized in various engineering applications and industrial purposes, in particular in geomechanics and environmental fluid dynamics field. - -Recommended references for implementation details of MPM in Kratos: -- Singer, V.; Sautter, K.B., Larese, A., Wüchner, R.; Bletzinger, K.U.; A partitioned material point method and discrete element method coupling scheme, Advanced Modeling and Simulation in Engineering Sciences, 9(16), (2022); DOI: https://doi.org/10.1186/s40323-022-00229-5 -- Chandra, B., Singer, V., Teschemacher, T., Wuechner, R., & Larese, A. (2021). Nonconforming Dirichlet boundary conditions in implicit material point method by means of penalty augmentation. Acta Geotechnica, 16(8), 2315-2335. DOI: 10.1007/s11440-020-01123-3 -- Wilson, P., Wüchner, R., & Fernando, D. (2021). Distillation of the material point method cell crossing error leading to a novel quadrature‐based C 0 remedy. International Journal for Numerical Methods in Engineering, 122(6), 1513-1537. -- Iaconeta, I., Larese, A., Rossi, R., & Oñate, E. (2018). A stabilized mixed implicit Material Point Method for non-linear incompressible solid mechanics. *Computational Mechanics*, 1-18. DOI 10.1007/s00466-018-1647-9 -- Iaconeta, I., Larese, A., Rossi, R., & Zhiming, G. (2016). Comparison of a material point method and a Galerkin meshfree method for the simulation of cohesive-frictional materials. *Materials*, 10(10), p. 1150. doi: 10.3390/ma10101150 +## GiD Interface +A GUI (Graphic User Interface) for the MPM application is also available within the pre and post processing software [GiD](https://www.gidhome.com/). Instructions on how to download and install it are located in the `GiDInterface` [GitHub repository](https://github.com/KratosMultiphysics/GiDInterface/tree/master/). A basic knowledge of GiD is required. ## Features -The following features are currently available and subject to development within the MPM Application: -- Formulation: - * Irreducible formulations (U displacement based) - * Mixed UP formulations - -- Element types: - * Updated Lagrangian elements - triangular and quadrilatera (2D) and tetrahedral and hexahedral (3D), structured and unstructured, using classical or partitioned quadrature rules (this latter limited to explicit MPM) - * Updated Lagrangian axis-symmetric elements - triangular and quadrilateral (2D), structured and unstructured - * Updated Lagrangian mixed UP elements - triangular (2D) and tetrahedral (3D), structured and unstructured, stabilized using Variational Multiscale Stabilization or Pressure Projection techniques - -- Constitutive laws: - * Linear isotropic elastic materials - plane strain, plane stress, axis-symmetric, and 3D - * Hyperelastic Neo-Hookean laws - finite strain, plane strain, axis-symmetric, and 3D - * Elasto-plastic laws: - * Mohr Coulomb - finite strain, associative and non-associative, plane strain, axis-symmetric, and 3D - * Mohr Coulomb with Strain Softening - finite strain, associative and non-associative, plane strain, axis-symmetric, and 3D - * Critical state laws: - * Modified Cam-Clay - finite strain, plane strain, axis-symmetric, and 3D - * Johnson Cook Thermal Plastic (just for explicit MPM) - -- A set of Boundary conditions: - * Grid-Based Conditions (conforming): applied directly on the background nodes - * Neumann: Point load - * Neumann: Line load (a distributed load applied over a line) - * Neumann: Surface load (a distributed load applied over a face) - * Dirichlet: Slip and No slip condition on arbitrary boundary. - * Material Point-Based Conditions (non conforming): applied in moveable boundary particles - * Neumann: Moving point load - * Dirichlet: Imposition of displacements (homogeneous and inhomogeneous) using penalty method - -- Strategies and schemes: - * Implicit - Newmark/Bossak prediction and correction scheme for static, quasi-static, and dynamic problems - * Explicit - -- Other features: - * Partitioned coupling with Finite Element Method - weak and strong coupling of nonconforming discretization - * Partitioned coupling with the Discrete Element Method - * material point erase features - to delete material points outside the interest domain +The following features are currently available and subject to development within the `MPMApplication`. + +**Formulations** +* Irreducible formulation (u displacement based) +* Mixed UP (displacement/pressure) formulation + +**Element types** +* Updated Lagrangian elements - triangular and quadrilateral (2D) and tetrahedral and hexahedral (3D), structured and unstructured, using classical or partitioned quadrature rules (this latter limited to explicit MPM) +* Updated Lagrangian axis-symmetric elements - triangular and quadrilateral (2D), structured and unstructured +* Updated Lagrangian mixed UP elements - triangular (2D) and tetrahedral (3D), structured and unstructured, stabilized using Variational Multiscale Stabilization (VMS) or Pressure Projection techniques + +**Constitutive laws** +* Linear isotropic elastic materials - plane strain, plane stress, axis-symmetric, and 3D +* Hyperelastic Neo-Hookean laws - finite strain, plane strain, axis-symmetric, and 3D +* Elasto-plastic laws: + * Mohr Coulomb - finite strain, associative and non-associative, plane strain, axis-symmetric, and 3D + * Mohr Coulomb with Strain Softening - finite strain, associative and non-associative, plane strain, axis-symmetric, and 3D +* Critical state laws: + * Modified Cam-Clay - finite strain, plane strain, axis-symmetric, and 3D + * Johnson Cook Thermal Plastic (just for explicit MPM) + +**Boundary conditions** +* Grid-Based Conditions (conforming): applied directly at the background nodes + * Neumann: Point load + * Neumann: Line load (a distributed load applied over a line) + * Neumann: Surface load (a distributed load applied over a face) + * Dirichlet: Slip and non-slip conditions for arbitrary inclination +* Material Point-Based Conditions (non-conforming): applied on movable boundary particles + * Neumann: + * moving point load + * interface condition for partitioned coupling with DEM + * Dirichlet: fixed, slip or contact condition + * penalty method + * Lagrange multiplier method + * perturbed Lagrangian method + * interface condition for partitioned coupling with FEM, RBS,... + +**Time schemes** +* Implicit - Newmark/Bossak prediction and correction scheme for static, quasi-static, and dynamic problems +* Explicit + +**Other features** +* Partitioned coupling with Finite Element Method (FEM) - weak and strong coupling of nonconforming discretization +* Partitioned coupling with the Discrete Element Method (DEM) +* Partitioned coupling with the Rigid Body Solver (RBS) +* Material point erase features - to delete material points outside the interest domain + + +## References + +Recommended references for implementation details of MPM in Kratos: +* Singer, V., (2024). **Partitioned Coupling Strategies to Simulate the Impact of Granular Mass Flows on Flexible Protective Structures**, *PhD Thesis*, Technical University of Munich. +* Singer, V., Teschemacher, T., Larese, A., Wüchner, R., Bletzinger, K.U. (2024). **Lagrange multiplier imposition of non-conforming essential boundary conditions in implicit Material Point Method**, *Computational Mechanics*, 73, 1311–1333 DOI: 10.1007/s00466-023-02412-w. +* Singer, V., Sautter, K.B., Larese, A., Wüchner, R., Bletzinger K.-U., (2023) **Partitioned Coupling Approaches for the Simulation of Natural Hazards Impacting Protective Structures**, *VIII International Conference on Particle-Based Methods*. DOI: 10.23967/c.particles.2023.002. +* Singer, V., Larese, A., Wüchner, R., Bletzinger K.-U., (2023). **Partitioned MPM-FEM Coupling Approach for Advanced Numerical Simulation of Mass-Movement Hazards Impacting Flexible Protective Structures**, *X International Conference on Computational Methods for Coupled Problems in Science and Engineering*. DOI: 10.23967/c.coupled.2023.026. +* Singer, V., Sautter, K.B., Larese, A., Wüchner, R., Bletzinger, K.-U. (2022). **A partitioned material point method and discrete element method coupling scheme**, *Advanced Modeling and Simulation in Engineering Sciences*, 9(16). DOI: doi.org/10.1186/s40323-022-00229-5. +* Wilson, P., (2022). **A computational impact analysis approach leveraging non-conforming spatial, temporal and methodological discretisations**, *PhD Thesis*, University of Queensland. DOI: 10.14264/3e10f66. +* Singer, V., Bodhinanda, C., Larese, A., Wüchner, R., Bletzinger K.-U., (2021). **A Staggered Material Point Method and Finite Element Method Coupling Scheme Using Gauss Seidel Communication Pattern**, *9th edition of the International Conference on Computational Methods for Coupled Problems in Science and Engineering*. DOI: 10.23967/coupled.2021.006. +* Chandra, B., Singer, V., Teschemacher, T., Wuechner, R., & Larese, A. (2021). **Nonconforming Dirichlet boundary conditions in implicit material point method by means of penalty augmentation**, *Acta Geotechnica*, 16(8), 2315-2335. DOI: 10.1007/s11440-020-01123-3. +* Wilson, P., Wüchner, R., & Fernando, D. (2021). **Distillation of the material point method cell crossing error leading to a novel quadrature‐based C0 remedy**, *International Journal for Numerical Methods in Engineering*, 122(6), 1513-1537. DOI: 10.1002/nme.6588. +* Iaconeta, I., Larese, A., Rossi, R., & Oñate, E. (2018). **A stabilized mixed implicit Material Point Method for non-linear incompressible solid mechanics**, *Computational Mechanics*, 1-18. DOI: 10.1007/s00466-018-1647-9. +* Iaconeta, I., Larese, A., Rossi, R., & Zhiming, G. (2016). **Comparison of a material point method and a Galerkin meshfree method for the simulation of cohesive-frictional materials**, *Materials*, 10(10), p. 1150. DOI: 10.3390/ma10101150. ## License -The MPM Application is OPEN SOURCE. The main code and program structure is available and aimed to grow with the need of any user willing to expand it. The BSD (Berkeley Software Distribution) licence allows to use and distribute the existing code without any restriction, but with the possibility to develop new parts of the code on an open or close basis depending on the developers. +The `MPMApplication` is **OPEN SOURCE**. The main code and program structure is available and aimed to grow with the need of any user willing to expand it. The **BSD** (Berkeley Software Distribution) licence allows to use and distribute the existing code without any restriction, but with the possibility to develop new parts of the code on an open or close basis depending on the developers. ## Contact * **Antonia Larese** - *Group Leader* - [antonia.larese@unipd.it](mailto:antonia.larese@unipd.it) * **Veronika Singer** - *Developer* - [veronika.singer@tum.de](mailto:veronika.singer@tum.de) -* **Laura Moreno** - *Developer* - [laura.morenomartinez@unipd.it](mailto:laura.morenomartinez@unipd.it) +* **Laura Moreno** - *Developer* - [laura.morenomartinez@ua.es](mailto:laura.morenomartinez@ua.es) +* **Andi Makarim Katili** - *Developer* - [andi.katili@tum.de](mailto:andi.katili@tum.de) From d4d687b49cdf3775b06ad9a525a9229a8a15cb05 Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Wed, 6 Nov 2024 16:21:43 +0100 Subject: [PATCH 07/14] minor update --- applications/MPMApplication/README.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/applications/MPMApplication/README.md b/applications/MPMApplication/README.md index 52f5db1b6e69..3863c78f8ad6 100644 --- a/applications/MPMApplication/README.md +++ b/applications/MPMApplication/README.md @@ -4,7 +4,7 @@ - [Theory](#theory) - [Getting Started](#getting-started) - [Getting Binaries with `pip` (users)](#getting-binaries-with-pip-users) - - [Build and Compile Source Code (developers)](#build-and-compile-source-code-developers) + - [Build from Source (developers)](#build-from-source-developers) - [Examples](#examples) - [GiD Interface](#gid-interface) - [Features](#features) @@ -40,7 +40,7 @@ python3 -m pip install KratosMPMApplication This command will install `KratosMultiphysics` (Kratos Multiphysics Core), `KratosMPMApplication` (application implementing MPM) and `KratosLinearSolversApplication` (dependency of MPMApplication). -### Build and Compile Source Code (developers) +### Build from Source (developers) Instructions on how to download, install and run the software in your local machine for development and testing purposes are available for Linux, Windows and MacOS distributions in the [installation page](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md). @@ -102,8 +102,8 @@ The following features are currently available and subject to development within * interface condition for partitioned coupling with DEM * Dirichlet: fixed, slip or contact condition * penalty method - * Lagrange multiplier method - * perturbed Lagrangian method + * Lagrange multiplier method (*soon in the master branch*) + * perturbed Lagrangian method (*soon in the master branch*) * interface condition for partitioned coupling with FEM, RBS,... **Time schemes** @@ -143,3 +143,4 @@ The `MPMApplication` is **OPEN SOURCE**. The main code and program structure is * **Veronika Singer** - *Developer* - [veronika.singer@tum.de](mailto:veronika.singer@tum.de) * **Laura Moreno** - *Developer* - [laura.morenomartinez@ua.es](mailto:laura.morenomartinez@ua.es) * **Andi Makarim Katili** - *Developer* - [andi.katili@tum.de](mailto:andi.katili@tum.de) +* **Nicolò Crescenzio** - *Developer* - [nicolo.crescenzio@math.unipd.it](mailto:nicolo.crescenzio@math.unipd.it) From b2d9569a6b81a60d8deec4a41a67187ce9cba05e Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Wed, 6 Nov 2024 23:04:37 +0100 Subject: [PATCH 08/14] more updates --- applications/MPMApplication/README.md | 44 ++++++++++++++++----------- 1 file changed, 26 insertions(+), 18 deletions(-) diff --git a/applications/MPMApplication/README.md b/applications/MPMApplication/README.md index 3863c78f8ad6..4ffa3384b963 100644 --- a/applications/MPMApplication/README.md +++ b/applications/MPMApplication/README.md @@ -16,56 +16,65 @@ This application implements the **Material Point Method (MPM)** with main motivations of simulating non-linear large deformable materials, such as free-surface flows, geomechanical phenomena, and extreme events involving impact, penetration, fragmentation, blast, multi-phase interaction, failure evolution, etc. -

- -

+![MPMApplication](https://user-images.githubusercontent.com/51473791/191960884-1f1c5a0c-efec-40ca-ac6d-2d53b5530739.gif) ## Theory -Particle or meshfree methods are a category of methods where the state of a system is represented by a set of particles, without a fixed connectivity; hence, making such methods suitable for the analysis of moving discontinuities and large deformations with breaking and fragmentation. This approach does not suffer from the mesh distortion and entanglement issues posed by other Lagrangian discretizations such as the finite element method. +Particle or meshfree methods are a family of methods in which the state of a system is represented by a set of particles, without a fixed connectivity. As a consequence, these methods are particularly well suited for the analysis of moving discontinuities and large deformations with breaking and fragmentation. This approach does not suffer from the mesh distortion and entanglement issues posed by other Lagrangian discretizations such as the Finite Element Method (FEM). -The **Material Point Method** (MPM) is an hybrid thechnique which uses a fixed background grid (or mesh) for solving the governing equations in a FEM fashion and set of material particles (MP) for storing all the hystorical variables and material informations. MPM has gained a remarkably increasing popularity due to its capability in simulating problems involving historically dependent materials and large deformations. As MPM is able to combine the strengths of Eulerian and Lagrangian methods, it has been utilized in various engineering applications and industrial purposes, in particular in geomechanics and environmental fluid dynamics field. +The **Material Point Method** (MPM) is an hybrid thechnique which uses a fixed background grid (or mesh) for solving the governing equations in a FEM fashion and set of material particles (MP) for storing all the hystorical variables and material informations. The MPM has gained a remarkably increasing popularity due to its capability in simulating problems involving historically dependent materials and large deformations. As MPM is able to combine the strengths of both Eulerian and Lagrangian methods, it has been used in various engineering applications and industrial purposes, in particular in geomechanics and in the environmental fluid dynamics field. ## Getting Started -This application is part of the Kratos Multiphysics framework and it can be obtained either by installing the Kratos binaries with `pip` (suggested for users that want to use the application like a black-box) or by downloading the source code and compiling it (suggested for developers). +The `MPMApplication` is part of the Kratos Multiphysics framework and can be obtained in two different ways: +* by installing the Kratos binaries using the package manager `pip` (suggested for users that want to use the application like a black-box); +* by downloading the source code and compiling it (suggested for developers). ### Getting Binaries with `pip` (users) -Kratos binaries are available for Linux, Windows and MacOS and can be obtained with `pip`. Open the terminal and run the following command: +Kratos binaries are available for Linux, Windows and MacOS and can be installed by using the `pip` package manager. + +Open the terminal and run the following command: ```bash python3 -m pip install KratosMPMApplication ``` -This command will install `KratosMultiphysics` (Kratos Multiphysics Core), `KratosMPMApplication` (application implementing MPM) and `KratosLinearSolversApplication` (dependency of MPMApplication). +This command will install the following packages: +* `KratosMultiphysics`: Kratos Multiphysics Core; +* `KratosMPMApplication`: application implementing MPM; +* `KratosLinearSolversApplication`: dependency required by `MPMApplication`. ### Build from Source (developers) -Instructions on how to download, install and run the software in your local machine for development and testing purposes are available for Linux, Windows and MacOS distributions in the [installation page](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md). +Instructions on how to download, compile and run Kratos in your local machine for development and testing purposes are available for Linux, Windows and MacOS distributions in the [installation page](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md). -In particular, be sure to compile the `MPMApplication` and the auxiliary `LinearSolversApplication`: +In particular, in order to use the `MPMApplication` it is also required to compile the auxiliary `LinearSolversApplication`. -* in **Linux**, check that in the `/path_to_kratos/scripts/standard_configure.sh` the following lines are written: +* In **Linux**, the following lines must appear in the `/path_to_kratos/scripts/standard_configure.sh` file: ```bash export KRATOS_APPLICATIONS= add_app ${KRATOS_APP_DIR}/MPMApplication add_app ${KRATOS_APP_DIR}/LinearSolversApplication ``` -* in **Windows**, check that in the `/path_to_kratos/scripts/standard_configute.bat` the following lines appears: +* In **Windows**, the following lines must appear in the `/path_to_kratos/scripts/standard_configure.sh` file: ```console set KRATOS_APPLICATIONS= CALL :add_app %KRATOS_APP_DIR%\MPMApplication; CALL :add_app %KRATOS_APP_DIR%\LinearSolversApplication; ``` -## Examples -Some use-cases and validation examples are available in the MPM section of the [Examples](https://kratosmultiphysics.github.io/Examples/) repository. Also, some unit tests of the main features can be found in the [tests](https://github.com/KratosMultiphysics/Kratos/tree/master/applications/MPMApplication/tests) folder. +## GUI + +A GUI (Graphic User Interface) for the MPM application is also available within the pre and post processing software [GiD](https://www.gidhome.com/). Instructions on how to download and install it are available in the `[GiDInterface` repository](https://github.com/KratosMultiphysics/GiDInterface/tree/master/). A basic knowledge of GiD is required. -## GiD Interface +Any software able to handle `vtk` files can be used for post processing (e.g., `Paraview`). -A GUI (Graphic User Interface) for the MPM application is also available within the pre and post processing software [GiD](https://www.gidhome.com/). Instructions on how to download and install it are located in the `GiDInterface` [GitHub repository](https://github.com/KratosMultiphysics/GiDInterface/tree/master/). A basic knowledge of GiD is required. +## Examples & Tutorials +* Use-cases and validation examples are available in the MPM section of the [Examples repository](https://kratosmultiphysics.github.io/Examples/). +* Unit tests of the main features can be found in the [tests](https://github.com/KratosMultiphysics/Kratos/tree/master/applications/MPMApplication/tests) folder. +* A step-by-step tutorial using GiD for both pre and post processing is available [here](https://kratosmultiphysics.github.io/Kratos/pages/Applications/MPM_Application/MPM_example_in_GiD/introduction.html). ## Features @@ -116,7 +125,6 @@ The following features are currently available and subject to development within * Partitioned coupling with the Rigid Body Solver (RBS) * Material point erase features - to delete material points outside the interest domain - ## References Recommended references for implementation details of MPM in Kratos: @@ -135,7 +143,7 @@ Recommended references for implementation details of MPM in Kratos: ## License -The `MPMApplication` is **OPEN SOURCE**. The main code and program structure is available and aimed to grow with the need of any user willing to expand it. The **BSD** (Berkeley Software Distribution) licence allows to use and distribute the existing code without any restriction, but with the possibility to develop new parts of the code on an open or close basis depending on the developers. +The `MPMApplication` is **Open Source**. The main code and program structure is available and aimed to grow with the need of any user willing to expand it. The **BSD** licence allows to use and distribute the existing code without any restriction, but with the possibility to develop new parts of the code on an open or close basis depending on the developers. ## Contact From e5545c1ff8b1bcc15190dbaa9295c554884d547b Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Wed, 6 Nov 2024 23:07:26 +0100 Subject: [PATCH 09/14] typo --- applications/MPMApplication/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/MPMApplication/README.md b/applications/MPMApplication/README.md index 4ffa3384b963..41510b2f994f 100644 --- a/applications/MPMApplication/README.md +++ b/applications/MPMApplication/README.md @@ -67,7 +67,7 @@ In particular, in order to use the `MPMApplication` it is also required to compi ## GUI -A GUI (Graphic User Interface) for the MPM application is also available within the pre and post processing software [GiD](https://www.gidhome.com/). Instructions on how to download and install it are available in the `[GiDInterface` repository](https://github.com/KratosMultiphysics/GiDInterface/tree/master/). A basic knowledge of GiD is required. +A GUI (Graphic User Interface) for the MPM application is also available within the pre and post processing software [GiD](https://www.gidhome.com/). Instructions on how to download and install it are available in the [`GiDInterface` repository](https://github.com/KratosMultiphysics/GiDInterface/tree/master/). A basic knowledge of GiD is required. Any software able to handle `vtk` files can be used for post processing (e.g., `Paraview`). From b54ada369f504507748c9ecdd9441bfd75fb1f59 Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Wed, 6 Nov 2024 23:20:42 +0100 Subject: [PATCH 10/14] use example description from repo --- .../Examples/Cylinder_on_inclined_plane.md | 55 ------------------- .../Examples/Granular_flow_2d.md | 47 ---------------- .../MPM_Application/Examples/menu_info.json | 16 ++++++ 3 files changed, 16 insertions(+), 102 deletions(-) delete mode 100644 docs/pages/Applications/MPM_Application/Examples/Cylinder_on_inclined_plane.md delete mode 100644 docs/pages/Applications/MPM_Application/Examples/Granular_flow_2d.md create mode 100644 docs/pages/Applications/MPM_Application/Examples/menu_info.json diff --git a/docs/pages/Applications/MPM_Application/Examples/Cylinder_on_inclined_plane.md b/docs/pages/Applications/MPM_Application/Examples/Cylinder_on_inclined_plane.md deleted file mode 100644 index 0000e45fc53e..000000000000 --- a/docs/pages/Applications/MPM_Application/Examples/Cylinder_on_inclined_plane.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -title: Cylinder on inclined plane 2D - comparison between analytical and numerical solution with MPM -keywords: -tags: [Cylinder_on_inclined_plane.md] -sidebar: mpm_application -summary: ---- -**Author:** Philip Franz\ -**Source files:** [cylinder_on_inclined_plane_2D](https://github.com/KratosMultiphysics/Examples/tree/master/mpm/validation/cylinder_on_inclined_plane/source) - -## Case Specification - -This is a 2D simulation of a cylinder on an inclined plane. A rotating as well as a frictionless sliding behaviour of the cylinder are regarded subsequently. The simulation is set up according to section 4.5.2 of (Iaconeta, 2019). -Linear, unstructured, triangular elements with a size of 0.01m are used to initialize the MPs. Three MPs per cell are considered. For the backgroundmesh linear, unstructured, triangular elements with a size of 0.02m are used. -However, in contrast to section 4.5.2 of (Iaconeta, 2019), the inclined plane is modelled by a line with unstructured elements with size 0.01m. On that line a non conforming Dirichlet boundary condition is imposed by using the penalty method based on (Chandra et al., 2021). - -The following applications of Kratos are used: -- [MPMApplication](https://github.com/KratosMultiphysics/Kratos/tree/master/applications/MPMApplication) -- [LinearSolversApplication](https://github.com/KratosMultiphysics/Kratos/tree/master/applications/LinearSolversApplication) - -The problem geometry as well as the boundary conditions are sketched below. The non conforming boundary condition is respresented by the copper coloured line. - -

- Initial geometry and boundary conditions. -

- -A hyper elastic Neo Hookean Plane strain (2D) constitutive law with unit thickness is considered with the following material parameters: -* Density (_ρ_): 7800 Kg/m3 -* Young's modulus (_E_): 200 MPa -* Poisson ratio (_ν_): 0.3 - -The time step is 0.001 seconds; the total simulation time is 1.0 seconds. The angle (_α_) of the inclined plane is 60°. The penalty-factor is 1e13. - -The contact between cylinder and inclined plane is modelled with the option "contact" (see line 53, file *ProjectParameters_contact.json*) in the first and with "slip" in the second case, based on (Chandra et al., 2021). Choosing "contact" leads to a rolling behaviour of the cylinder; "slip" to frictionless sliding. - -## Results -The analytical and numerical solution for the displacement function of the respective case of the above stated problem are compared afterwards: - -

- Initial geometry and boundary conditions. -

- - -The left image displays the rolling cylinder - modelled with option "contact". The right one shows the sliding cylinder (frictionless) - modelled with option "slip". - -

- Light -        - Dark -

- - -## References -- Iaconeta, I. (2019). *Discrete-continuum hybrid modelling of flowing and static regimes.* (Ph.D. thesis). Universitat politècnica de Catalunya - Barcelona tech -- Chandra, B., Singer, V., Teschemacher, T., Wüchner, R., Larese, A. (2021) *Nonconforming Dirichlet boundary conditions in implicit material point method by means of penalty augmentation*. Acta Geotech. 16, 2315–2335. https://doi.org/10.1007/s11440-020-01123-3 diff --git a/docs/pages/Applications/MPM_Application/Examples/Granular_flow_2d.md b/docs/pages/Applications/MPM_Application/Examples/Granular_flow_2d.md deleted file mode 100644 index c00a51153c9e..000000000000 --- a/docs/pages/Applications/MPM_Application/Examples/Granular_flow_2d.md +++ /dev/null @@ -1,47 +0,0 @@ ---- -title: Granular Flow 2D Validation Test -keywords: -tags: [Granular_flow_2d.md] -sidebar: mpm_application -summary: ---- -**Author:** Bodhinanda Chandra\ -**Source files:** [granular_flow_2D](https://github.com/KratosMultiphysics/Examples/tree/master/mpm/validation/granular_flow_2D/source) - -## Case Specification - -This is a 2D non-cohesive granular material simulation according to the experiment conducted by (Bui et al., 2008). Here, linear structured triangular elements are used to initialize the MPs and as the background mesh. The structured mesh arrangement is chosen to avoid the irregularities of the generated MP’s density, which, by further, improving the numerical solutions. - -The following application of Kratos is used: -- [MPMApplication](https://github.com/KratosMultiphysics/Kratos/tree/master/applications/MPMApplication) - -The problem geometry as well as the boundary conditions are sketched below: - -

- Initial mesh and boundary conditions. -

- -An elasto-plastic Mohr-Coulomb plane stress constitutive law with unit thickness is considered with the following material parameters: -* Density (_ρ_): 2650 Kg/m3 -* Young's modulus (_E_): 840 kPa -* Poisson ratio (_ν_): 0.3 -* Angle of internal friction (_φ_): 19.8° -* Cohesion (_c_): 0.0 kPa -* Dilatancy angle (_ψ_): 0.0° - -The time step is 0.00005 seconds, while the total simulation time is 2.0 seconds. - -## Results - -The problem stated above has been solved with a structured mesh with 3 material points per cell is considered with average mesh size of 0.002 m. The obtained numerical result is compared with experimental and simulation results conducted by (Bui et al., 2008) as depicted by the following figures: - -

- Obtained results and comparison. - - (a.) Experiment conducted by (Bui et al., 2008), (b.) comparison of final surface configuration and failure line, (c.) simulation results of (Bui et al., 2008) by using SPH method, (d.) simulation results obtained by implicit MPM method -

- - -## References -- Bui, H. H., Fukagawa, R., Sako, K., & Ohno, S. (2008). Lagrangian meshfree particles method (SPH) for large deformation and failure flows of geomaterial using elastic-plastic soil constitutive model. International Journal for Numerical and Analytical Methods in Geomechanics, 32(12), 1537–1570. https://doi.org/10.1002/nag.688 -- Chandra, B., Larese, A., Iaconeta, I., Rossi, R., Wüchner, R. (2018). Soil-Structure Interaction Simulation of Landslides Impacting a Structure Using an Implicit Material Point Method. *Accepted for publication by Proceeding of the 2nd International Conference on The Material Point Method (MPM2019)*. diff --git a/docs/pages/Applications/MPM_Application/Examples/menu_info.json b/docs/pages/Applications/MPM_Application/Examples/menu_info.json new file mode 100644 index 000000000000..1acb4e2753b8 --- /dev/null +++ b/docs/pages/Applications/MPM_Application/Examples/menu_info.json @@ -0,0 +1,16 @@ +{ + "custom_entries": [ + { + "type": "kratos_example", + "raw_url": "https://raw.githubusercontent.com/KratosMultiphysics/Examples/refs/heads/master/mpm/validation/cylinder_on_inclined_plane/README.md", + "source_url": "https://github.com/KratosMultiphysics/Examples/tree/master/mpm/validation/cylinder_on_inclined_plane", + "file_name": "Cylinder_on_inclined_plane_2D.md" + }, + { + "type": "kratos_example", + "raw_url": "https://raw.githubusercontent.com/KratosMultiphysics/Examples/refs/heads/master/mpm/validation/granular_flow_2D/README.md", + "source_url": "https://github.com/KratosMultiphysics/Examples/tree/master/mpm/validation/granular_flow_2D", + "file_name": "Granular_Flow_2D.md" + } + ] +} From 4ce733d6af5e1ffad81e8ab1fa5f5b250cec498a Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Thu, 7 Nov 2024 00:09:09 +0100 Subject: [PATCH 11/14] update docs main page mpm application --- .../MPM_Application/General/menu_info.json | 10 ++++++++++ docs/pages/Applications/MPM_Application/menu_info.json | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 docs/pages/Applications/MPM_Application/General/menu_info.json diff --git a/docs/pages/Applications/MPM_Application/General/menu_info.json b/docs/pages/Applications/MPM_Application/General/menu_info.json new file mode 100644 index 000000000000..400c182b0913 --- /dev/null +++ b/docs/pages/Applications/MPM_Application/General/menu_info.json @@ -0,0 +1,10 @@ +{ + "custom_entries": [ + { + "type": "kratos_example", + "raw_url": "https://raw.githubusercontent.com/KratosMultiphysics/Kratos/refs/heads/particle/update_readme/applications/MPMApplication/README.md", + "source_url": "https://github.com/KratosMultiphysics/Kratos/tree/particle/update_readme/applications/MPMApplication", + "file_name": "Overview.md" + } + ] +} diff --git a/docs/pages/Applications/MPM_Application/menu_info.json b/docs/pages/Applications/MPM_Application/menu_info.json index 9bd46e52cd32..950b99f64d75 100644 --- a/docs/pages/Applications/MPM_Application/menu_info.json +++ b/docs/pages/Applications/MPM_Application/menu_info.json @@ -1,6 +1,6 @@ { "side_bar_name": "mpm_application", - "landing_page": "General/Overview.md", + "landing_page": "General/remote_Overview.md", "additional_menu_options": { "product": "MPM Application", "title": "sidebar" From d605554539b5367ad98d3770762734d1cd82e1c7 Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Thu, 7 Nov 2024 00:15:18 +0100 Subject: [PATCH 12/14] add empty file --- .../MPM_Application/General/remote_Overview.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 docs/pages/Applications/MPM_Application/General/remote_Overview.md diff --git a/docs/pages/Applications/MPM_Application/General/remote_Overview.md b/docs/pages/Applications/MPM_Application/General/remote_Overview.md new file mode 100644 index 000000000000..f1ba15e64128 --- /dev/null +++ b/docs/pages/Applications/MPM_Application/General/remote_Overview.md @@ -0,0 +1,8 @@ +--- +title: MPM Application +keywords: +tags: [remote_Overview.md] +sidebar: mpm_application +summary: +--- + From 713f9be0da89982f713822755092c94e84d0035b Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Thu, 7 Nov 2024 00:19:18 +0100 Subject: [PATCH 13/14] remove `Overview.md` --- .../MPM_Application/General/Overview.md | 135 ------------------ 1 file changed, 135 deletions(-) delete mode 100644 docs/pages/Applications/MPM_Application/General/Overview.md diff --git a/docs/pages/Applications/MPM_Application/General/Overview.md b/docs/pages/Applications/MPM_Application/General/Overview.md deleted file mode 100644 index a3a90a449c0e..000000000000 --- a/docs/pages/Applications/MPM_Application/General/Overview.md +++ /dev/null @@ -1,135 +0,0 @@ ---- -title: MPM Application -keywords: -tags: [Overview.md] -sidebar: mpm_application -summary: ---- - -This application implements the **Material Point Method (MPM)** with main motivations of simulating non-linear large deformable materials, such as free-surface flows, geomechanical phenomena, and extreme events involving impact, penetration, fragmentation, blast, multi-phase interaction, failure evolution, etc. - -![MPMApplication](https://user-images.githubusercontent.com/51473791/191960884-1f1c5a0c-efec-40ca-ac6d-2d53b5530739.gif) - -## Theory - -Particle or meshfree methods are a category of methods where the state of a system is represented by a set of particles, without a fixed connectivity; hence, making such methods suitable for the analysis of moving discontinuities and large deformations with breaking and fragmentation. This approach does not suffer from the mesh distortion and entanglement issues posed by other Lagrangian discretizations such as the finite element method. - -The **Material Point Method** (MPM) is an hybrid thechnique which uses a fixed background grid (or mesh) for solving the governing equations in a FEM fashion and set of material particles (MP) for storing all the hystorical variables and material informations. MPM has gained a remarkably increasing popularity due to its capability in simulating problems involving historically dependent materials and large deformations. As MPM is able to combine the strengths of Eulerian and Lagrangian methods, it has been utilized in various engineering applications and industrial purposes, in particular in geomechanics and environmental fluid dynamics field. - -## Getting Started - -This application is part of the Kratos Multiphysics framework and it can be obtained either by installing the Kratos binaries with `pip` (suggested for users that want to use the application like a black-box) or by downloading the source code and compiling it (suggested for developers). - -### Getting Binaries with `pip` (users) - -Kratos binaries are available for Linux, Windows and MacOS and can be obtained with `pip`. Open the terminal and run the following command: - -```bash -python3 -m pip install KratosMPMApplication -``` - -This command will install `KratosMultiphysics` (Kratos Multiphysics Core), `KratosMPMApplication` (application implementing MPM) and `KratosLinearSolversApplication` (dependency of MPMApplication). - -### Build and Compile Source Code (developers) - -Instructions on how to download, install and run the software in your local machine for development and testing purposes are available for Linux, Windows and MacOS distributions in the [installation page](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md). - -In particular, be sure to compile the `MPMApplication` and the auxiliary `LinearSolversApplication`: - -* in **Linux**, check that in the `/path_to_kratos/scripts/standard_configure.sh` the following lines are written: - ```bash - export KRATOS_APPLICATIONS= - add_app ${KRATOS_APP_DIR}/MPMApplication - add_app ${KRATOS_APP_DIR}/LinearSolversApplication - ``` - -* in **Windows**, check that in the `/path_to_kratos/scripts/standard_configute.bat` the following lines appears: - ```console - set KRATOS_APPLICATIONS= - CALL :add_app %KRATOS_APP_DIR%\MPMApplication; - CALL :add_app %KRATOS_APP_DIR%\LinearSolversApplication; - ``` - -## Examples -Some use-cases and validation examples are available in the MPM section of the [Examples](https://kratosmultiphysics.github.io/Examples/) repository. Also, some unit tests of the main features can be found in the [tests](https://github.com/KratosMultiphysics/Kratos/tree/master/applications/MPMApplication/tests) folder. - -## GiD Interface - -A GUI (Graphic User Interface) for the MPM application is also available within the pre and post processing software [GiD](https://www.gidhome.com/). Instructions on how to download and install it are located in the `GiDInterface` [GitHub repository](https://github.com/KratosMultiphysics/GiDInterface/tree/master/). A basic knowledge of GiD is required. - -## Features - -The following features are currently available and subject to development within the `MPMApplication`. - -**Formulations** -* Irreducible formulation (u displacement based) -* Mixed UP (displacement/pressure) formulation - -**Element types** -* Updated Lagrangian elements - triangular and quadrilateral (2D) and tetrahedral and hexahedral (3D), structured and unstructured, using classical or partitioned quadrature rules (this latter limited to explicit MPM) -* Updated Lagrangian axis-symmetric elements - triangular and quadrilateral (2D), structured and unstructured -* Updated Lagrangian mixed UP elements - triangular (2D) and tetrahedral (3D), structured and unstructured, stabilized using Variational Multiscale Stabilization (VMS) or Pressure Projection techniques - -**Constitutive laws** -* Linear isotropic elastic materials - plane strain, plane stress, axis-symmetric, and 3D -* Hyperelastic Neo-Hookean laws - finite strain, plane strain, axis-symmetric, and 3D -* Elasto-plastic laws: - * Mohr Coulomb - finite strain, associative and non-associative, plane strain, axis-symmetric, and 3D - * Mohr Coulomb with Strain Softening - finite strain, associative and non-associative, plane strain, axis-symmetric, and 3D -* Critical state laws: - * Modified Cam-Clay - finite strain, plane strain, axis-symmetric, and 3D - * Johnson Cook Thermal Plastic (just for explicit MPM) - -**Boundary conditions** -* Grid-Based Conditions (conforming): applied directly at the background nodes - * Neumann: Point load - * Neumann: Line load (a distributed load applied over a line) - * Neumann: Surface load (a distributed load applied over a face) - * Dirichlet: Slip and non-slip conditions for arbitrary inclination -* Material Point-Based Conditions (non-conforming): applied on movable boundary particles - * Neumann: - * moving point load - * interface condition for partitioned coupling with DEM - * Dirichlet: fixed, slip or contact condition - * penalty method - * Lagrange multiplier method - * perturbed Lagrangian method - * interface condition for partitioned coupling with FEM, RBS,... - -**Time schemes** -* Implicit - Newmark/Bossak prediction and correction scheme for static, quasi-static, and dynamic problems -* Explicit - -**Other features** -* Partitioned coupling with Finite Element Method (FEM) - weak and strong coupling of nonconforming discretization -* Partitioned coupling with the Discrete Element Method (DEM) -* Partitioned coupling with the Rigid Body Solver (RBS) -* Material point erase features - to delete material points outside the interest domain - - -## References - -Recommended references for implementation details of MPM in Kratos: - -* Singer, V., (2024). **Partitioned Coupling Strategies to Simulate the Impact of Granular Mass Flows on Flexible Protective Structures**, *PhD Thesis*, Technical University of Munich. -* Singer, V., Teschemacher, T., Larese, A., Wüchner, R., Bletzinger, K.U. (2024). **Lagrange multiplier imposition of non-conforming essential boundary conditions in implicit Material Point Method**, *Computational Mechanics*, 73, 1311–1333 DOI: 10.1007/s00466-023-02412-w. -* Singer, V., Sautter, K.B., Larese, A., Wüchner, R., Bletzinger K.-U., (2023) **Partitioned Coupling Approaches for the Simulation of Natural Hazards Impacting Protective Structures**, *VIII International Conference on Particle-Based Methods*. DOI: 10.23967/c.particles.2023.002. -* Singer, V., Larese, A., Wüchner, R., Bletzinger K.-U., (2023). **Partitioned MPM-FEM Coupling Approach for Advanced Numerical Simulation of Mass-Movement Hazards Impacting Flexible Protective Structures**, *X International Conference on Computational Methods for Coupled Problems in Science and Engineering*. DOI: 10.23967/c.coupled.2023.026. -* Singer, V., Sautter, K.B., Larese, A., Wüchner, R., Bletzinger, K.-U. (2022). **A partitioned material point method and discrete element method coupling scheme**, *Advanced Modeling and Simulation in Engineering Sciences*, 9(16). DOI: doi.org/10.1186/s40323-022-00229-5. -* Wilson, P., (2022). **A computational impact analysis approach leveraging non-conforming spatial, temporal and methodological discretisations**, *PhD Thesis*, University of Queensland. DOI: 10.14264/3e10f66. -* Singer, V., Bodhinanda, C., Larese, A., Wüchner, R., Bletzinger K.-U., (2021). **A Staggered Material Point Method and Finite Element Method Coupling Scheme Using Gauss Seidel Communication Pattern**, *9th edition of the International Conference on Computational Methods for Coupled Problems in Science and Engineering*. DOI: 10.23967/coupled.2021.006. -* Chandra, B., Singer, V., Teschemacher, T., Wuechner, R., & Larese, A. (2021). **Nonconforming Dirichlet boundary conditions in implicit material point method by means of penalty augmentation**, *Acta Geotechnica*, 16(8), 2315-2335. DOI: 10.1007/s11440-020-01123-3. -* Wilson, P., Wüchner, R., & Fernando, D. (2021). **Distillation of the material point method cell crossing error leading to a novel quadrature‐based C0 remedy**, *International Journal for Numerical Methods in Engineering*, 122(6), 1513-1537. DOI: 10.1002/nme.6588. -* Iaconeta, I., Larese, A., Rossi, R., & Oñate, E. (2018). **A stabilized mixed implicit Material Point Method for non-linear incompressible solid mechanics**, *Computational Mechanics*, 1-18. DOI: 10.1007/s00466-018-1647-9. -* Iaconeta, I., Larese, A., Rossi, R., & Zhiming, G. (2016). **Comparison of a material point method and a Galerkin meshfree method for the simulation of cohesive-frictional materials**, *Materials*, 10(10), p. 1150. DOI: 10.3390/ma10101150. - -## License - -The `MPMApplication` is **OPEN SOURCE**. The main code and program structure is available and aimed to grow with the need of any user willing to expand it. The **BSD** (Berkeley Software Distribution) licence allows to use and distribute the existing code without any restriction, but with the possibility to develop new parts of the code on an open or close basis depending on the developers. - -## Contact - -* **Antonia Larese** - *Group Leader* - [antonia.larese@unipd.it](mailto:antonia.larese@unipd.it) -* **Veronika Singer** - *Developer* - [veronika.singer@tum.de](mailto:veronika.singer@tum.de) -* **Laura Moreno** - *Developer* - [laura.morenomartinez@ua.es](mailto:laura.morenomartinez@ua.es) -* **Andi Makarim Katili** - *Developer* - [andi.katili@tum.de](mailto:andi.katili@tum.de) From e0b76398675074034599fce552874a6823cd5fe5 Mon Sep 17 00:00:00 2001 From: ncrescenzio Date: Thu, 7 Nov 2024 00:20:14 +0100 Subject: [PATCH 14/14] Remove toc from `README.md` --- applications/MPMApplication/README.md | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/applications/MPMApplication/README.md b/applications/MPMApplication/README.md index 41510b2f994f..361a8e19b44c 100644 --- a/applications/MPMApplication/README.md +++ b/applications/MPMApplication/README.md @@ -1,19 +1,5 @@ # MPM Application -- [Overview](#overview) -- [Theory](#theory) -- [Getting Started](#getting-started) - - [Getting Binaries with `pip` (users)](#getting-binaries-with-pip-users) - - [Build from Source (developers)](#build-from-source-developers) -- [Examples](#examples) -- [GiD Interface](#gid-interface) -- [Features](#features) -- [References](#references) -- [License](#license) -- [Contact](#contact) - -## Overview - This application implements the **Material Point Method (MPM)** with main motivations of simulating non-linear large deformable materials, such as free-surface flows, geomechanical phenomena, and extreme events involving impact, penetration, fragmentation, blast, multi-phase interaction, failure evolution, etc. ![MPMApplication](https://user-images.githubusercontent.com/51473791/191960884-1f1c5a0c-efec-40ca-ac6d-2d53b5530739.gif)