diff --git a/applications/MPMApplication/README.md b/applications/MPMApplication/README.md index ce26f97c651e..361a8e19b44c 100644 --- a/applications/MPMApplication/README.md +++ b/applications/MPMApplication/README.md @@ -1,107 +1,140 @@ # 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. -
- -
+![MPMApplication](https://user-images.githubusercontent.com/51473791/191960884-1f1c5a0c-efec-40ca-ac6d-2d53b5530739.gif) +## Theory -## Getting Started +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). -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. 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. -### Prerequisites +## Getting Started -Build Kratos and check the [configuration files](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md#configuration-scripts-examples) +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) -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 installed by using the `pip` package manager. -``` cmake --DMPM_APPLICATION=ON --DLINEAR_SOLVERS_APPLICATION=ON +Open the terminal and run the following command: + +```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 the following packages: +* `KratosMultiphysics`: Kratos Multiphysics Core; +* `KratosMPMApplication`: application implementing MPM; +* `KratosLinearSolversApplication`: dependency required by `MPMApplication`. -```set KRATOS_APPLICATIONS= -CALL :add_app %KRATOS_APP_DIR%\LinearSolversApplication; -CALL :add_app %KRATOS_APP_DIR%\MPMApplication; -``` +### Build from Source (developers) -so the MPM application is compiled along with auxiliary linear solvers required. +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). -## 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, in order to use the `MPMApplication` it is also required to compile 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**, 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 + ``` -It requires [GiD](https://www.gidhome.com/) - Pre and Post Processing software. +* 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; + ``` -## Theory +## GUI -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. +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. -### Material Point Method +Any software able to handle `vtk` files can be used for post processing (e.g., `Paraview`). -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. +## 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). -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 -- ## 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 (*soon in the master branch*) + * perturbed Lagrangian method (*soon in the master branch*) + * 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** 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) +* **Nicolò Crescenzio** - *Developer* - [nicolo.crescenzio@math.unipd.it](mailto:nicolo.crescenzio@math.unipd.it) 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. - -- -
- -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: - -- -
- - -The left image displays the rolling cylinder - modelled with option "contact". The right one shows the sliding cylinder (frictionless) - modelled with option "slip". - -- - - -
- - -## 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: - -- -
- -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: - -- - - (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" + } + ] +} 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 74acfe8ffd11..000000000000 --- a/docs/pages/Applications/MPM_Application/General/Overview.md +++ /dev/null @@ -1,111 +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) - -## Getting Started - -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). - -**Prerequisites** - -Build Kratos and check the [configuration files](https://github.com/KratosMultiphysics/Kratos/blob/master/INSTALL.md#configuration-scripts-examples) - -In LINUX: check that in the /path_to_kratos/scripts/configure.sh the followinglines are written: - -``` cmake --DMPM_APPLICATION=ON --DLINEAR_SOLVERS_APPLICATION=ON -``` - -In WINDOWS: check that in the /path_to_kratos/scripts/configute.bat the following lines appears: - -```set KRATOS_APPLICATIONS= -CALL :add_app %KRATOS_APP_DIR%\LinearSolversApplication; -CALL :add_app %KRATOS_APP_DIR%\MPMApplication; -``` - -so the MPM application is compiled along with auxiliary linear solvers required. - -## 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 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. - -## 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. - -**Material Point Method** - -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 - - -## 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 - - -## 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. - -## 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) 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/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: +--- + 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"