0% found this document useful (0 votes)
2 views

TutorialManual_2024

The Anura3D MPM Software Tutorial Manual provides comprehensive guidance for users on utilizing the Anura3D software, including installation, input data creation, calculation processes, and result visualization. It includes contributions from various experts and outlines the necessary prerequisites for compiling and running the software. The manual also emphasizes the importance of adhering to licensing agreements and the limitations of liability associated with the software's use.

Uploaded by

rafael zizzi
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

TutorialManual_2024

The Anura3D MPM Software Tutorial Manual provides comprehensive guidance for users on utilizing the Anura3D software, including installation, input data creation, calculation processes, and result visualization. It includes contributions from various experts and outlines the necessary prerequisites for compiling and running the software. The manual also emphasizes the importance of adhering to licensing agreements and the limitations of liability associated with the software's use.

Uploaded by

rafael zizzi
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 310

Anura3D MPM Research Community

Anura3D MPM Software


Tutorial Manual

Version: 2024
June 2024
Anura3D MPM Software, Tutorial Manual

With the contributions of:


Amine Aboufirass Deltares Delft, The Netherlands
Abdelrahman Alsardi Virginia Tech, United States
Luis Angel Aviles Universitat Politècnica de Catalunya, Barcelona, Spain
Francesca Ceccato Università degli Studi di Padova, Italy
Alexander Chmelnizkij Technische Universität Hamburg, Germany
Gaia Di Carluccio Universitat Politècnica de Catalunya, Barcelona, Spain
James Fern Amberg Engineering Ltd / EPFL, Switzerland
Vahid Galavi Deltares Delft, The Netherlands
Veronica Girardi Università degli Studi di Padova, Italy
Mateu Maglia Universitat Politècnica de Catalunya, Barcelona, Spain
Pietro Marveggio Politecnico di Milano, Italy
Mario Martinelli Deltares Delft, The Netherlands
Miriam Mieremet Deltares Delft, The Netherlands
Francesc Mirada Universitat Politècnica de Catalunya, Barcelona, Spain
Jonathan Moore Virginia Tech, United States
John W. Murphy University of California Berkeley, United States
Núria Pinyol Universitat Politècnica de Catalunya, Barcelona, Spain
Grace Roberts University of Cambridge, United Kingdom
Alexander Rohe Deltares Delft, The Netherlands
Angela Saade Virginia Tech, United States
Marc Stapelfeldt Technische Universität Hamburg, Germany
Alba Yerro Virginia Tech, United States
Kaleigh Yost Virginia Tech, United States
Luis E. Zambrano-Cruzatty University of Maine, United States
Bruno Zuada Deltares Delft, The Netherlands

Many people contributed to the creation of this tutorial. If you feel that you are one of them but your
name does not appear in this list, please contact us.

Published and printed by: Contact and information:


Anura3D MPM Research Community e-mail: [email protected]
c/o Stichting Deltares
Boussinesqweg 1
2629 HV Delft (The Netherlands)

Copyright © 2024 Deltares on behalf of Anura3D MPM Research Community


All rights reserved.

No part of this document may be reproduced in any form by print, photo print, photocopy, microfilm or any other means,
without written permission from the publisher.

This software and the documentation is furnished under license and may be used only in accordance with the terms
of such license. In summary, Deltares grants the licensed user the non-exclusive and non-transferable right to use the
software. The user has NO ownership rights or author right and may not make any alterations. The user is liable for a
responsible application of the software. It is advised to consult the manuals before applying the software.
All intellectual property rights necessary to license this program to you (’Licensee’) are vested in Deltares. Deltares shall
not be responsible for losses of any kind resulting from the use of this program or of any documentation and can in no way
provide compensation for any losses sustained including but not limited to any obligation, liability, right, claim or remedy for
tort nor any business expense machine downtime or damages caused to Licensee by any deficiency defect or error in the
computer program or in any such documentation or any malfunction of this program or for any incidental or consequential
losses damages or costs however caused.
Contents v

Contents
1 Introduction 5
1.1 Large deformations and soil–water–structure interaction . . . . . . . . . . . . . . . . . . . . 5
1.2 Anura3D MPM Research Community . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 About Anura3D 2023 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Getting started with Anura3D 9


2.1 Calculation process with Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.1 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.2 Performing calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.3 Visualisation of results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 Downloading Anura3D source code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3 Compiling Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3.1 Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3.2 Compiling Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.4 Installation of GiD (pre-processor) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4.1 Installation instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4.2 The Anura3D 2023 problemtype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.5 Installation of ParaView (post-processor) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3 One-dimensional consolidation (oedometric compression test) 23


3.1 Problem definition in 2D and 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2 Creating input data in GiD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.1 Starting pre-processor and selecting problem type . . . . . . . . . . . . . . . . . . . 25
3.2.2 Defining geometry in 2D and 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.2.3 Defining unit and dimentions in 2D and 3D . . . . . . . . . . . . . . . . . . . . . . . 34
3.2.4 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.2.5 Specifying material points in 2D and 3D . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.2.6 Defining boundary conditions in 2D and 3D . . . . . . . . . . . . . . . . . . . . . . . 38
3.2.7 Creating mesh in 2D and 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.2.8 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.2.9 Generating Anura3D input files GOM and CPS . . . . . . . . . . . . . . . . . . . . . 51
3.3 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.3.1 Calculation using batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.3.2 Calculation using command line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.4 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.4.1 Opening ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.4.2 Loading the VTK output files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.4.3 Showing the mesh in 2D and 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.4.4 Change view settings to parallel projection (for 3D case only) . . . . . . . . . . . . . 58
3.4.5 Visualisation of liquid pressure in 2D and 3D . . . . . . . . . . . . . . . . . . . . . . 59
3.4.6 Visualisation of soil displacement in 2D and 3D . . . . . . . . . . . . . . . . . . . . . 63
3.4.7 Determining the material point ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.4.8 Plotting time graphs for material points . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.5 Visualization of results in GiD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.5.1 Opening GiD post-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.5.2 Loading Binary files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.5.3 Mesh and MPs visualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.5.4 Change view settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.5.5 Visualisation of liquid pressure in 2D and 3D . . . . . . . . . . . . . . . . . . . . . . 75
3.5.6 Determining the material point ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.5.7 Plotting time graphs for material points . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.6 Visualisation of text output files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
vi Anura3D MPM Software, Tutorial Manual

3.7 Variations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.7.1 Variation: Effect of local damping . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.7.2 Variation: Small deformation problem . . . . . . . . . . . . . . . . . . . . . . . . . . 82
3.8 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

4 Wave propagation 85
4.1 Problem definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.2 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.2.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.2.2 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.2.3 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
4.2.4 Defining loading conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.2.5 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.3 Calculation data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
4.4 Generating input data and performing calculation . . . . . . . . . . . . . . . . . . . . . . . . 89
4.5 Visualisation of results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.6 Variations: Bulk viscosity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.7 Variations: Absorbing Bounadries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.8 Variations: Coupled wave propagation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

5 Triaxial compression test 101


5.1 Problem definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5.2 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5.2.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5.2.2 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
5.2.3 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.2.4 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.2.5 Defining initial conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.2.6 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.2.7 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.2.8 Initialization of calculation data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
5.2.9 Generating input files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
5.3 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
5.4 Visualisation of text output files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
5.5 External Soil Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
5.5.1 Preparation of the FORTRAN File . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
5.5.2 Include the Module into the code . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
5.5.3 Definition of the pointer to the ESM in "ReadMaterialData.for" . . . . . . . . . . . . . 114
5.5.4 Definition of the pointer to the ESM in "ReadMaterialData.for" . . . . . . . . . . . . . 114
5.5.5 Definition of a External Soil Model in Gid . . . . . . . . . . . . . . . . . . . . . . . . 115

6 Sliding blocks 117


6.1 Problem definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
6.2 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
6.2.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
6.2.2 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6.2.3 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.2.4 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.2.5 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6.2.6 Defining contact properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
6.2.7 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
6.2.8 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
6.2.9 Generating input files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
6.3 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Contents vii

6.3.1 Stage 1: Initialisation of stresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132


6.3.2 Stage 2: Sliding blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
6.4 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
6.5 Variations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
6.6 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

7 Column collapse 137


7.1 Problem definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
7.2 Creating input data in GiD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
7.2.1 Starting pre-processor and selecting problemtype . . . . . . . . . . . . . . . . . . . 138
7.2.2 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
7.2.3 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
7.2.4 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
7.2.5 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
7.2.6 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
7.2.7 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
7.2.8 Generating input files GOM and CPS . . . . . . . . . . . . . . . . . . . . . . . . . . 146
7.3 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
7.3.1 Stage 1: Initialisation of stresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
7.3.2 Stage 2: Calculation of column failure . . . . . . . . . . . . . . . . . . . . . . . . . . 147
7.4 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
7.4.1 Gravity loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
7.4.2 Column collapse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
7.5 Variations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
7.5.1 Variation: Three-dimensional plane strain model . . . . . . . . . . . . . . . . . . . . 149
7.5.2 Variation: Variation of the internal friction angle of the soil . . . . . . . . . . . . . . . 150
7.5.3 Variation: Variation of the local damping . . . . . . . . . . . . . . . . . . . . . . . . . 151
7.5.4 Variation: Variation of the column ratio . . . . . . . . . . . . . . . . . . . . . . . . . 151
7.5.5 Variation: Saturated column colapse - fully coupled formulation . . . . . . . . . . . . 151
7.5.6 Variation: Apply contact formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
7.6 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

8 Shallow foundation 155


8.1 Problem definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
8.2 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
8.2.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
8.2.2 Defining units and dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
8.2.3 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
8.2.4 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
8.2.5 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
8.2.6 Defining initial conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
8.2.7 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
8.2.8 Defining a surface for computation of reaction forces . . . . . . . . . . . . . . . . . . 163
8.2.9 Defining the moving mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
8.2.10 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
8.3 Approach 1: External load A and use of load multipliers . . . . . . . . . . . . . . . . . . . . . 167
8.3.1 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
8.3.2 Generating Input Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
8.3.3 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
8.3.4 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
8.3.5 Visualisation of text output files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
8.3.6 Approach 1 - Variation: add load system B to simulate surcharge on soil . . . . . . . 174
8.4 Approach 2: Prescribed velocity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
8.4.1 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
viii Anura3D MPM Software, Tutorial Manual

8.4.2 Generating input files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176


8.4.3 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
8.4.4 Visualisation of results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
8.5 Variations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179

9 Impact problem 181


9.1 Problem definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
9.2 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
9.2.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
9.2.2 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
9.2.3 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
9.2.4 Specifying material points and assigning materials . . . . . . . . . . . . . . . . . . . 184
9.2.5 Defining initial conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
9.2.6 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
9.2.7 Defining initial velocity on material points . . . . . . . . . . . . . . . . . . . . . . . . 186
9.2.8 Defining a surface to record reaction forces . . . . . . . . . . . . . . . . . . . . . . . 186
9.2.9 Defining the moving mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
9.2.10 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
9.2.11 Calculation parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
9.2.12 Generating input files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
9.2.13 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
9.2.14 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
9.2.15 Visualisation of text output files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
9.3 Variation: Simulation of the impacting body as a rigid body . . . . . . . . . . . . . . . . . . . 194
9.3.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
9.3.2 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
9.3.3 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
9.3.4 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
9.3.5 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
9.3.6 Defining initial velocity on material points . . . . . . . . . . . . . . . . . . . . . . . . 195
9.3.7 Defining contact properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
9.3.8 Defining a surface for computation of reaction forces . . . . . . . . . . . . . . . . . . 196
9.3.9 Defining the moving mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
9.3.10 Creating the mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
9.3.11 Calculation parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
9.3.12 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
9.3.13 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
9.3.14 Visualisation of text output files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
9.4 Variation: Simulation in 3D cylindrical axisymmetric conditions . . . . . . . . . . . . . . . . . 197
9.4.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
9.4.2 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
9.4.3 Defining problem dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
9.4.4 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
9.4.5 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
9.4.6 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
9.4.7 Defining initial velocity on material points . . . . . . . . . . . . . . . . . . . . . . . . 201
9.4.8 Defining a surface for computation of reaction forces . . . . . . . . . . . . . . . . . . 201
9.4.9 Defining the moving mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
9.4.10 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
9.4.11 Calculation parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
9.4.12 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
9.4.13 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
9.5 Other variations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Contents ix

10 Excavation 205
10.1 3D Column excavation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
10.1.1 Problem definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
10.1.2 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
10.1.2.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
10.1.2.2 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
10.1.2.3 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . 207
10.1.2.4 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
10.1.2.5 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . 208
10.1.2.6 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
10.1.2.7 Defining excavation steps . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
10.1.2.8 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . 211
10.1.2.9 Generating input files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
10.1.3 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
10.1.3.1 Stage 1: Gravity loading . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
10.1.3.2 Stage 2 to 6: Excavation stages . . . . . . . . . . . . . . . . . . . . . . . 212
10.1.4 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
10.1.5 Visualisation of text output files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
10.1.6 Excavation with Mohr-Coulomb material . . . . . . . . . . . . . . . . . . . . . . . . . 216
10.2 2D Strutted excavation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
10.2.1 Problem definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
10.2.2 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
10.2.2.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
10.2.2.2 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
10.2.2.3 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . 220
10.2.2.4 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
10.2.2.5 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . 223
10.2.2.6 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
10.2.2.7 Defining excavation steps . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
10.2.2.8 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . 225
10.2.2.9 Generating input files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
10.2.3 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
10.2.3.1 Stage 1: Gravity loading . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
10.2.3.2 Stage 2: Excavation stages . . . . . . . . . . . . . . . . . . . . . . . . . . 226
10.2.4 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . 227

11 Construction 231
11.1 2D Column construction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
11.1.1 Problem definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
11.1.2 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
11.1.2.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
11.1.2.2 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
11.1.2.3 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . 233
11.1.2.4 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
11.1.2.5 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . 234
11.1.2.6 Defining construction steps . . . . . . . . . . . . . . . . . . . . . . . . . . 234
11.1.2.7 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
11.1.2.8 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . 236
11.1.2.9 Generating input files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
11.1.3 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
11.1.4 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
11.1.5 Visualisation of text output files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
11.1.6 Variation: filling empty elements during construction . . . . . . . . . . . . . . . . . . 238
x Anura3D MPM Software, Tutorial Manual

11.1.6.1 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . 240

12 Submerged slope collapse 241


12.1 Problem definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
12.2 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
12.2.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
12.2.2 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
12.2.3 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
12.2.4 Specifying material points and material type . . . . . . . . . . . . . . . . . . . . . . 243
12.2.5 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
12.2.6 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
12.2.7 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
12.2.8 Generating Input Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
12.3 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
12.3.1 Step 1: Gravity Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
12.3.2 Step 2: Slope Failure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
12.3.3 Step 3: Slope Stabilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249

13 Slope failure under transient hydraulic loads 253


13.1 Problem definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
13.2 Rapid Drawdown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
13.2.1 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
13.2.1.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
13.2.1.2 Defining units and dimensions . . . . . . . . . . . . . . . . . . . . . . . . 254
13.2.1.3 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
13.2.1.4 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . 256
13.2.1.5 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
13.2.1.6 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . 256
13.2.1.7 Defining initial conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
13.2.1.8 Defining hydraulic boundary conditions . . . . . . . . . . . . . . . . . . . . 260
13.2.1.9 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
13.2.1.10 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . 261
13.2.1.11 Generating Input Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
13.2.2 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
13.2.2.1 Stage 1: Gravity Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
13.2.2.2 Stage 2: Slope Failure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
13.2.3 Variation on initial conditions: maximum suction threshold . . . . . . . . . . . . . . . 267
13.3 Rainfall infiltration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
13.3.1 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
13.3.1.1 Starting pre-processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
13.3.1.2 Defining units and dimensions . . . . . . . . . . . . . . . . . . . . . . . . 268
13.3.1.3 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
13.3.1.4 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . 269
13.3.1.5 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
13.3.1.6 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . 269
13.3.1.7 Defining initial conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
13.3.1.8 Defining hydraulic boundary conditions . . . . . . . . . . . . . . . . . . . . 272
13.3.1.9 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
13.3.1.10 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . 274
13.3.1.11 Generating Input Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
13.3.2 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
13.3.2.1 Stage 1: Gravity Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
13.3.2.2 Stage 2: Slope Failure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
13.3.2.3 Stage 3: Slope Stabilization . . . . . . . . . . . . . . . . . . . . . . . . . . 278
Contents xi

13.3.3 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . 278


13.3.4 Variation on triggering action: application of zero suction . . . . . . . . . . . . . . . . 279
13.4 Stress initialization from file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
13.4.1 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
13.4.1.1 Preparation of input file for stress initialization . . . . . . . . . . . . . . . . 280
13.4.1.2 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . 281
13.4.1.3 Generating Input Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
13.4.2 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
13.4.3 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . 282

References 284

A Shallow foundation in 3D-cylindrical coordinates 287


A.1 Creating input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
A.1.1 Defining geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
A.1.2 Defining material properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
A.1.3 Specifying material points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
A.1.4 Defining boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
A.1.5 Defining a surface for computation of reaction forces . . . . . . . . . . . . . . . . . . 290
A.1.6 Defining the moving mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
A.1.7 Creating mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
A.1.8 Initialisation of calculation data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
A.1.9 Generating Input Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
A.1.10 Performing calculation in Anura3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
A.1.11 Visualisation of results in ParaView . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
xii Anura3D MPM Software, Tutorial Manual
Contents 1

Anura3D - is a software for the numerical modelling and simulation of large deformations and soil–water–structure
interaction using the material point method (MPM). Copyright (C) 2020 Members of the Anura3D MPM Re-
search Community.
Anura3D is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser
General Public License as published by the Free Software Foundation <https://www.gnu.org/licenses/>,
either version 3 of the License, or (at your option) any later version.
Anura3D documentation is furnished under the License and may be used only in accordance with the terms
of such license. It is advised to consult the manuals before applying the software.
Anura3D is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.

Anura3D MPM Research Community Contact and information


c/o Stichting Deltares e-mail: [email protected]
Boussinesqweg 1 web: www.Anura3D.com
2629 HV Delft (The Netherlands)
2 Anura3D MPM Software, Tutorial Manual
Contents 3

Complementary reading: [? ] Fern E.J., Rohe A., Soga K., Alonso E.E. (2019) The Material Point Method
for Geotechnical Engineering – A Practical Guide. CRC Press, London.

The Material
Point Method for
Geotechnical
Engineering
A Practical Guide
EDITED BY
James Fern • Alexander Rohe
Kenichi Soga • Eduardo Alonso
4 Anura3D MPM Software, Tutorial Manual
1 Introduction
Authors: Alba Yerro; Alexander Rohe; James Fern; Francesca Ceccato; Veronica Girardi

1.1 Large deformations and soil–water–structure interaction


Interactions between soil, water, and structures play an impor-
tant role in geotechnical, environmental and civil engineering
problems, such as landslides induced by seepage and rain, liq-
uefaction or fluidisation, and sedimentation processes in sub-
merged slopes, internal erosion in dykes, scouring around off-
shore structures, consolidation-induced settlement or pile in-
stallation in saturated soils. In many cases, the material in-
volved can experience large deformations, which can lead to
dramatic events. The numerical modelling of these processes
is challenging because the treatment of soil-water coupling,
soil-structure interaction, and large deformations is not straight-
forward.

MPM is a point-based numerical method capable of mod-


elling large deformations, which has been extended and im-
plemented in the Anura3D software to cope with advanced
soil-water-structure interaction problems. This tutorial manual
provides instructions on how to perform numerical simulations
with Anura3D . More detailed information on the material point
method and its applications is given by Fern et al. 2019 [?
]. A list of publications and the Anura3D Scientific Manual
are also good references available on the Anura3D website
(www.anura3D.com).

1.2 Anura3D MPM Research Community


The Anura3D Software is being developed by the Anura3D MPM Research Community. In this international
collaboration the complementary expertise of different groups that carry out research on numerical modelling
of large deformations and soil–water–structure interaction is brought together. For more information visit the
website www.anura3d.com of the Anura3D MPM Research Community.

The Anura3D MPM Research Community is collaborating with CIMNE (International Center for Numerical
Methods in Engineering), who is granting free temporal licences of GiD for the academic purposes of the
Anura3D MPM Research Community. The support of CIMNE is greatly acknowledged. The Anura3D MPM
Research Community uses GiD to develop the Anura3D "problemtype". GiD may also be used as a pre-
processing software for the preparation of the required files to perform calculations with Anura3D . However,
the interface between Anura3D and the pre- and post-processing software is completely open and the user
may choose other software.
6 Anura3D MPM Software, Tutorial Manual

1.3 About Anura3D 2023


Anura3D is a research-oriented software developed by the Anura3D MPM Research Community (Sec. 1.2).
The code has been validated and tested with a limited number of problems. The Anura3D MPM Research
Community shall not be responsible for losses of any kind, resulting from the use of this program. The
Anura3D is a free open source software under the GNU Lesser General Public License version 3.

The most relevant publications related to the development and application of the Anura3D software are avail-
able online where direct links to the respective journals or theses for download are provided. The development
of the current code started in 2008 and is ongoing.

The features implemented in the open source are briefly summarized in Table 1.1. While some of them have
been tested, others are still under developemnt. The examples provided in this tutorial provide guidance to
the user through the available tested features.

The current state of the Anura3D has the following identified limitations concerning the tested features:
⋄ 3D-Cylindrical: y-axis is the axis of symmetry, gravity can only be applied in y-axis direction.
⋄ Multiphase formulations: a combination of different material types can cause problems for certain com-
binations (undrained total stress and undrained effective stress), no water flow is transferred between
saturated and dry materials.
⋄ Contact algorithm: the maximum number of contact materials is four (4), the maximum number of master
materials is one (1). Contact is fixed on the mesh nodes.
⋄ Moving mesh: works only for prismatic bodies in 3D and trapezium areas in 2D, the moving mesh direction
is constrained only in one direction. the moving mesh needs an extension and/or compression mesh.
⋄ Excavation: limited to 30 excavation stages.
⋄ Rigid body: can be applied only to one body in the system, only works together with the contact algorithm,
only moves in one direction, it can’t rotate.
⋄ Fixities and traction boundary conditions: only aligned with the coordinate axes
⋄ K0 stress initialization: one homogeneous material (otherwise, use gravity together with local damping
and stress initialization with quasi-static convergence criteria).
⋄ Infiltration/evaporation boundary condition: only one value of infiltration rate can be applied, it is not
possible to assign different values at different part of the domain.
If two-phase single point unsaturated formulation is used, K0 initialization works if a phreatic surface and
a soil surface are specified using options available in Anura3D_2023 Problem Type. Phreatic surface and
soil surface are assigned to lines, thus are only limited to 2D geometries.

The user should also take into account the following warnings:
⋄ Multiple materials: the use of several drainage material types on the same model is not recommended.
⋄ Absorbing boundaries: do not prevent material points from leaving the mesh.
Introduction 7

Table 1.1: List of features available in Anura3D 2023

Name of the feature Under development Tested


Geometrical dimensions
2D - plane strain X
2D - axisymmetric X
3D - cartesian X
3D - cylindrical X
Computational methods
MPM-MP X
MPM-MIXED X
UL-FEM X
FEM X
Integration schemes
Explicit X
Implicit X
Multiphase formulations
1-phase (dry material, undrained, drained) X
2-phase single-point for saturated soil X
2-phase single-point for unsaturated soil X
2-phase double-point X
3-phase single-point X
Constitutive models
Linear elastic X
Mohr-Coulomb X
Bingham fluid X
External soil model (user defined) X
Other features
Contact algorithm X
Moving mesh X
Excavation X
Construction X
Rigid body X
Bulk viscosity X
Submerged analysis X
Output of reaction forces at surfaces X
Boundary and initial conditions
Traction/pressure X
Infiltration & evaporation X
Total hydraulic head X
Seepage face X
Absorbing boundary X
Remove fixity X
Prescribed velocity X
Initial velocity on material points X
K0 stress initialization (including phreatic surface) X
Stress initialization with quasi-static convergence X
Stress initialization from file X
8 Anura3D MPM Software, Tutorial Manual
2 Getting started with Anura3D
Authors: Alba Yerro; Alexander Rohe; James Fern; Francesca Ceccato; Luis E. Zambrano-Cruzatty

Anura3D is a software tool for numerical analysis of geotechnical problems developed by the Anura3D MPM
Research Community and distributed as open-source code programmed using Fortran. This software is a
2D/3D implementation of the material point method (MPM) and it is used for simulating the physics involved in
soil-water-structure interaction and large deformation problems. There is no warranty or liability in any sense
for the use of the provided software or results (see "Copyright and Liability Anura3D" at the beginning of this
document). The list of implemented and under development features is provided in Table 1.1.

This chapter explains how to get started with Anura3D. The basis to perform a numerical simulation is pro-
vided in Section 2.1. Instructions for downloading Anura3D are given in Section 2.2. Then, the process to
compile the code is explained in Section 2.3. Subsequently, the installation instructions for both pre- and
post-processing software are presented in Sections 2.4 and 2.5. In both cases, the use of third-party software
is required.

2.1 Calculation process with Anura3D


The process to perform a numerical simulation consists of three parts as follows.
⋄ Creating input data with the pre-processor (e.g., GiD software)
⋄ Performing calculation with the Anura3D software (compiled executable)
⋄ Visualisation of results with the post-processor (e.g., ParaView software)

In this tutorial manual, we will use GiD as the pre-processor and ParaView as the post-processor, though other
pre- and post-processors may be used (the interface between Anura3D and the pre- and post-processing
software is completely open). A schematic description of the calculation procedure is presented in Figure 2.1,
and each step is explained below in this chapter.

Figure 2.1: Procedure for performing a numerical simulation with Anura3D including pre- and
post-processing.

2.1.1 Creating input data


Anura3D requires two input files – the GOM file and the CPS file. Both files can be generated with the GiD
pre-processing software (the installation instructions of GiD are given in Section 2.4). Both files are text files
(ASCII), which can be modified manually by opening them in a text editor and changing the text. This is
typically done for parametric analyses for which the value of a specific parameter is changed. Users could
eventually create their own GOM and CPS files with alternative pre-processors (different than GiD) if desired.

Definition of problem: GOM file


10 Anura3D MPM Software, Tutorial Manual

The GOM file describes the geometry of the problem, the material data sets, initial and boundary condi-
tions, loading conditions, excavation phases, contact properties, number of material points, and computational
mesh. When a model is created, GiD writes this information into the GOM file.

Definition of calculation data: CPS file


The CPS file describes the calculation data such as the computation method, calculation time step data,
gravity data, load multipliers, quasi-static convergence, damping, strain smoothing, output data, etc. Unlike
the GOM file, a CPS file is required for each calculations phase. GiD is used to define the initial CPS file
required to initiate the calculation (i.e., CPS_001 file), whilst the subsequent CPS files are generated at the
end of each calculation phase.

Additionally, Anura3D adopts the UMAT format for constitutive model formulation, which can be added by the
user.

2.1.2 Performing calculation


Anura3D is a stand-alone programme which can be executed from the Windows command line or by running
the calculate.bat file in the project folder projectname.A3D. The process to download and compile the
code is explained in Sections 2.2 and 2.3.

2.1.3 Visualisation of results


Anura3D creates results by writing several output files (Figure 2.1). These files have to be treated differently
depending on the file type.

VTK files
Anura3D stores most of the output information in a set of files with VTK extension. The ParaView post-
processing software is recommended to visualise the results stored in those output files (the installation
instructions of GiD are given in Section 2.5). There are four different types of VTK files depending on the type
of data stored in them, and are as follows.
⋄ projectname_MeshData_SSSTTTTTT.VTK
⋄ projectname_MPScalar_SSSTTTTTT.VTK
⋄ projectname_MPVector_SSSTTTTTT.VTK
⋄ projectname_MPTensor_SSSTTTTTT.VTK

where projectname is the user-defined name of the project and SSS and TTTTTT are the automatically
assigned calculation step and time step numbers, respectively. The variables of the VTK files are listed in
Figure 2.2.

The mesh data, such as the mesh location and active elements, is stored in MeshData. The material point
data is stored in:
⋄ MPScalar: collects all scalar quantities such as material point number, pore water pressure, mean and
deviatoric stress, etc.
⋄ MPVector: collects all vector quantities such as velocity, displacement, etc. The components of the vector
are
(X, Y, Z)
in global coordinate system. For 2D analysis the third component (Z) is zero.
⋄ MPTensor: collects tensorial quantities such as stress and strain. The tensor has 9 components, that
ParaView enumerate from 0 to 8 starting from the top left corner of the matrix, as indicated in Figure 2.3.
Getting started with Anura3D 11

Figure 2.2: Scalar, vector and tensor components in the VTK files.

Figure 2.3: Components of the stress tensor in 2D and 3D in Paraview.

Other output files


Any text editor or spreadsheet software can be used to visualise the other output files such as the *.PAR and
*.ENG files. The PAR file stores data from a given material point, which has to be specified in the CPS file,
$$OUTPUT_MATERIAL_POINTS. The ENG files gives the values of kinetic energy, internal work of the system,
and time step information. Chapter 3.6 explains how to create and read text output files.

2.2 Downloading Anura3D source code


The Anura3D source code is stored in the Anura3D GitHub repository in the src folder. You can visualize the
files by clicking on each file in the src folder. You can download all the files by clicking on "Code" and then
select "Download ZIP".

We recommend that external users and developers fork the code. Information on how to fork a repository in
GitHub can be found here.
12 Anura3D MPM Software, Tutorial Manual

2.3 Compiling Anura3D


Before performing any simulation with Anura3D, it is required to compile the code and create an executable
file.

2.3.1 Prerequisites
Anura3D is written in Fortran language and requires a text editor and a compiler to visualize the code and
create the executable. The current version (Anura3D 2023) is supported only on Windows operating systems
and requires Visual Studio (VS) and a Fortran Compiler, distributed in the oneAPI package (Base + HPC
Toolkits). Since VS is a dependency for the oneAPI software, not all combinations of VS and oneAPI are
compatible. Check the compatibility requirements using this link. Make sure to include the Intel oneAPI Math
Kernel Library (oneMKL) during the installation of the Intel oneAPI Base Toolkit.

The VS Community version 2022 is recommended and is freely distributed. The VS Community version 2019
is also compatible. Similarly, the oneAPI release is suggested. Intel offers academic licenses, provided an
active .edu email address. Visit the sites shown bellow to download VS Community 2022 release and the
oneAPI base and high performance computing toolkits.
https://visualstudio.microsoft.com/vs/community/

https://software.intel.com/content/www/us/en/develop/tools/oneapi/base-toolkit/download.html

The following steps are recommended for the successful installation of VS and oneAPI.

(1) Check that the minimum hardware requirements for VS and oneAPI are fulfilled.
(2) Download and install VS first.
(3) When installing VS, the user is prompt to select custom workloads. Select "Desktop development with
C++" as shown in Figure 2.4.

Figure 2.4: Visual Studio installer- Workload tab.

(4) For different versions of VS the corresponding C++ components must be installed. Consult this site’s
information to get help.
Getting started with Anura3D 13

(5) Continue with the installation process following the instructions provided in the VS installer.
(6) Download and execute the installation file for the oneAPI (base and high performance computing toolkit).
Check that oneAPI is compatible with the previously installed VS version.
(7) Depending on the oneAPI version, the installation manager will indicate if VS was installed successfully.
If that is not the case, instructions are provided by the oneAPI installation manager.
(8) In the case that VS was installed successfully, proceed to install oneAPI following the instructions on the
screen.
(9) Once the installation is completed, open a new project in VS as shown in Figure 2.5.

Figure 2.5: Visual Studio 2022: Creating a new project.

(10) If Fortran appears under the All languages drop-down list as it is shown in Figure 2.6, the installation of
VS and oneAPI is successful, and they are integrated correctly.

Figure 2.6: If Visual Studio 2022 and oneAPI are integrated correctly, Fortran should be available
in the dropdown menu.

2.3.2 Compiling Anura3D


Once the installation of VS and oneAPI is completed, the Anura3D code can be compiled. The following steps
show how to build the code together with the included constitutive models.
14 Anura3D MPM Software, Tutorial Manual

(1) Navigate the code folder to the ".../Anura3D/VS" folder.


(2) Find and double click on the Anura3D.sln file.
(3) VS should initialize. If the screen observed in Figure 2.7 doesn’t automatically appear, open the Anura3D.for
file from the Solution Explorer window. Select "Release" from the solution configurations dropdown menu.

Figure 2.7: Anura3D code in Visual Basic 2022.

(4) Click on the Build menu (Figure 2.7).


(5) Click on Build Solution (Figure 2.8). This will compile the Anura3D executable.

Figure 2.8: The code will be compiled after clicking on Build Solution.

(6) If the compilation is completed successfully, the executable is stored in the ".../Anura3D/VS/Release"
folder.
(7) For troubleshooting look at the error messages shown in the Error List (select View/Error List from the
top menu) or the Output window as it is shown in Figure 2.9 and direct your questions to the forum at
Getting started with Anura3D 15

www.Anura3D.com specifying your VS and oneAPI versions with the error message displayed a the Error
List or Output window.

Figure 2.9: Error List window in Visual Studio Community 2022.

2.4 Installation of GiD (pre-processor)


GiD is a licensed software with free one-month license for first-time user, and can be renewed for free up to
three times. The installation process is as follows.

2.4.1 Installation instructions


(1) Download the installation files (i.e. v16) at

https://www.gidsimulation.com/gid-for-science/downloads/

(2) Check the version number and operating system, and click on the "Download" button as shown in Fig-
ure 2.10.
16 Anura3D MPM Software, Tutorial Manual

Figure 2.10: Download GiD v16 installation files.

(3) Start the installation and follow the on-screen instructions.


(4) Obtain the one-month free license at:

http://www.gidhome.com/purchase/passwords

(5) Select the version number, license type, and time period as shown in Figure 2.11.

Figure 2.11: Obtain one-month free password for GiD.

(6) Follow the instructions on the website and provide the required information. A one-month free password
will directly be provided (at the bottom of the website).
(7) Enter the password in the "Enter password window" in GiD as shown in Figure 2.12, or navigate to
Help/Register GiD/Local/Enter Password in the menu.

Figure 2.12: Enter password in GiD.

Anura3D 2023 problemtype is meant to be used with GiD v16.0. GiD community and Anura3D MPM Research
Getting started with Anura3D 17

Community do not support the use of different versions.

2.4.2 The Anura3D 2023 problemtype


The Anura3D 2023 "problemtype" folder is needed to use the Anura3D Software features in the GID pre-
processor (more in section 2.1). The folder is partially pre-assembled and distributed with the Anura3D code.
The "problemtype" folder must have the structure shown in Figure 2.13 to be completely functional, which
includes the executable and other dependencies.

Figure 2.13: "Problemtype" folder structure. The green file represent the path where the
Anura3D_2024.exe must be pasted.
18 Anura3D MPM Software, Tutorial Manual

To complete the assembling of the problemtype file and ensure its functionality proceed with the following
steps:

(1) Copy the executable file from ".../Anura3D/VS/Release/" to "...Anura3D_2024.gid/exec/".


(2) Finally, copy the Anura3D 2023 "problemtype" into the GiD installation directory as shown in Figure 2.14.

Figure 2.14: Copy Anura3D 2023 problemtype into GiD installation directory.

2.5 Installation of ParaView (post-processor)


ParaView is an open-source software under a permissive BSD license and is, thus, free to use with Anura3D.
The original ParaView software will be used without any modifications of its source code. The following steps
have to be performed to install ParaView.

(1) Download the installation files of the latest supported ParaView version (i.e. v5.11) at:
http://www.paraview.org/download

(2) Select the version number, download type and operating system, and click on the <Download> button as
shown in Figure 2.15.

Figure 2.15: Download ParaView v5.11 installation files.

(3) Start the installation executable and follow the on-screen installation instructions.

After installation ParaView is ready for use to post-process Anura3D calculation results.

Important note for the first time use of ParaView


If you use ParaView for the first time after installation, the following changes are recommended to secure an
improved visualisation of the results.
Getting started with Anura3D 19

(1) In the ParaView main menu, choose <Edit> <Settings...> as indicated in Figure 2.16 and the "Settings"
dialogue box will open.

Figure 2.16: Change settings in ParaView.

(2) Select the tab "Color Palette" as indicated in Figure 2.17


(3) Click on <Select palette to load...> drop down menu and select the option <White Background> as shown
in Figure 2.17.
(4) The colours should be updated. Click on <OK> to save the changes.
20 Anura3D MPM Software, Tutorial Manual

Figure 2.17: Change of "Color Palette" in ParaView.

(5) Choose <View> from the menu and select the options of the drop down menu as indicated in Figure 2.18.
Getting started with Anura3D 21

Figure 2.18: Select "View" options in ParaView.

These are one-time actions and the choices will be stored as default for any further use of ParaView.
22 Anura3D MPM Software, Tutorial Manual
3 One-dimensional consolidation (oedometric compression test)
Authors: Alba Yerro; Alexander Rohe; Alexander Chmelnizkij; James Fern; Francesca Ceccato; John Murphy;
Grace Roberts; Pietro Marveggio

The aim of this tutorial is to simulate a one-dimensional (1D) consolidation problem, also known as an oedo-
metric compression test, using the two-phase single-point MPM formulation in Anura3D . This means that a
single set of material points is generated and are representative for both the solid and liquid phases of the
continuum. More information on this modeling approach is available in Chapter 2 of ? ]. In Anura3D , the
continuum can be represented by a two-dimensional (2D) or a three-dimensional (3D) discretisation. Both
cases are explained in this chapter.

The following steps are required for the simulation of a 1D compression and consolidation test (oedometer
problem).
⋄ Create the geometry in 2D (or 3D);
⋄ Choose the material model and definition of the material properties;
⋄ Definition of loading and boundary conditions in 2D and 3D;
⋄ Generation of the mesh in 2D (or 3D);
⋄ Execution of calculation;
⋄ Output of results.

Several variations of the problem are proposed in Section 3.7 in order to investigate the effects of local
damping for the dynamic explicit formulation. This is done by changing the local damping coefficient. In
addition, it is suggested to decrease the external load in order to perform a simulation with small deformations
for comparison with analytical results. Finally, the analysis of a wave propagation problem in a Newtonian
liquid column is proposed.

3.1 Problem definition in 2D and 3D


A saturated soil column of 1m height is loaded with a vertical load of q = 400 kPa, which will be suddenly
applied on the upper boundary and maintained throughout the calculation. The geometry of the problem in
2D and 3D is shown in Figure 3.1 and the dimensions are given in Table 3.1. The bottom boundary will be
defined as impervious and, therefore, the drainage length is H = 1 m. Gravity is neglected. The bottom
boundary is fixed and the soil column can only deform in the vertical direction. Note that an empty space (T)
is included at the top of the column to allow for vertical movement of the material (points) at the top of the
column.

The material is considered elastic and the model parameters are given in Table 3.2. Note that the bulk modulus
of the liquid is considered 100-times smaller than the physical one in order to decrease the computational
time as a larger critical time step size is obtained. This does not have a significant influence on the results but
provides a computationally faster simulation. The intrinsic permeability of κ = 1.0214· 10–9 m2 is equivalent to
a Darcy permeability of k = 0.01 m/s.

Table 3.1: Dimensions of the oedometer problem in 2D and 3D.

Dimension Height H [m] Width W [m] Depth D [m] Empty space T [m]
2D 1.0 0.1 – 0.1
3D 1.0 0.1 0.1 0.1
24 Anura3D MPM Software, Tutorial Manual

(a) (b)

Figure 3.1: Problem definition for the oedometer simulation including empty space (T) to allow
for large deformation: (a) 2D case and (b) 3D case.

Table 3.2: Material properties of the oedometer problem.

Parameter Symbol Unit Value


Material type: saturated soil – fully coupled
Initial porosity n0 – 0.4
Density solid ρs kg/m3 2650
Density liquid ρl kg/m3 1000
Intrinsic permeability κ m2 1.0214 · 10–9
Bulk modulus liquid Kl kPa 2.15 · 104
Dynamic viscosity liquid µd kPa/ s 1.002 · 10–6
Material model solid: linear elasticity
Effective Poisson ratio ν′ –– 0.3
Effective Young’s modulus E′ kPa 1000
One-dimensional consolidation (oedometric compression test) 25

3.2 Creating input data in GiD


Anura3D requires two input files to start a calculation – the so-called GOM and CPS files (see Section 2.1).
The GOM file includes the geometry, material properties, boundary conditions, loading conditions, and mesh
properties. The CPS file defines the calculation options. Both files can be created using GiD (see Section 2.4
for software installation instructions), which is described in Sections 3.2.1 to 3.2.9.

The <Anura3D > menu data-tree is available in GiD and it is recommended to follow each item top down (see
Figure 3.2). The <Anura3D > menu appears after selecting the Anura3D problemtype as explained in the
following Section 3.2.1.

Figure 3.2: GiD data-tree to prepare Anura3D calculation input files.

3.2.1 Starting pre-processor and selecting problem type


The GOM file that contains information about the geometry, material properties, boundary conditions, loading
conditions, and mesh properties is created using the GiD pre-processor. The following steps have to be
followed.

(1) Start the GiD programme (version 16) by clicking on the Windows desktop icon (Figure 3.3).

Figure 3.3: Starting the GiD pre-processor.

(2) Choose the Anura3D problemtype:


Select <Data> <Problem type> from the menu.
Choose <Anura3D 2023 > in the list of problemtypes as shown in Figure 3.4.
26 Anura3D MPM Software, Tutorial Manual

Figure 3.4: Choosing the "Anura3D 2023 " problemtype in GiD.

(3) The disclaimer for using the Anura3D software appears as shown in Figure 3.5 and has to be accepted to
be able to continue.

Figure 3.5: Disclaimer for using the Anura3D software.

(4) Save the project. Click on icon <Save GiD project> in the sidebar OR select <File> <Save as...> from the
menu as shown in Figure 3.6 OR press <CTRL>+<S>.
One-dimensional consolidation (oedometric compression test) 27

(a) (b)

Figure 3.6: Saving the project in GiD: (a) sidebar button or (b) drop-down menu.

(5) Save the project in the desired directory on the hard disk with an appropriate name (e.g. "oedometer") as
shown in Figure 3.7. Make sure that the projectname does not contain any spaces.

Figure 3.7: Save project files in GiD for the oedometer problem.

3.2.2 Defining geometry in 2D and 3D


The geometry consists of points, lines, surfaces, and in 3D also volumes. The approach is (1) to define lines
between points, and then (2) to define surfaces from them. For the 3D case, volumes will be created from the
surfaces. The geometry of the problem is shown in Figure 3.1 with dimensions as given in Table 3.1.

The 2D geometry will be created in the x-y-plane with z-coordinate equal to zero. In that case entering the
z-coordinate is not required. GiD automatically assumes the z-coordinate equal to zero.

Creating lines (for 2D and 3D case)


The lines are created in the following way.
(1) Click on icon <Create Line> in the sidebar OR choose <Geometry> <Create> <Straight Line> from the
menu as shown in Figure 3.8.
28 Anura3D MPM Software, Tutorial Manual

(a) (b)

Figure 3.8: Creating lines in GiD: (a) sidebar button or (b) drop-down menu.

(2) In the command line, enter the coordinates of the first point. Note that there must be a space between
numbers.
⋄ 2D case: 0 0, as shown in Figure 3.9(a) and confirm by pressing <ENTER>.
The x- and y-coordinates are provided. For the 2D case, entering the z-coordinate is not required as
GiD automatically assumes it equal to zero.
⋄ 3D case: 0 0 0, as shown in Figure 3.9(b) and confirm by pressing <ENTER>.
The x-, y-, z-coordinates are provided.

(a) (b)

Figure 3.9: Entering coordinates at command line in GiD: (a) 2D case and (b) 3D case.

(3) Enter coordinates of the remaining points of the lower rectangle.


⋄ 2D case: Second point: 0.1 0 <ENTER>
2D case: Third point: 0.1 1 <ENTER>
2D case: Fourth point: 0 1 <ENTER>
Enter coordinates of the last point: 0 0 <ENTER>, to close the rectangle by connecting the line with
the starting point.
⋄ 3D case: Second point: 0.1 0 0 <ENTER>
2D case: Third point: 0.1 1 0 <ENTER>
2D case: Fourth point: 0 1 0 <ENTER>
Enter coordinates of the last point: 0 0 0 <ENTER>, to close the rectangle by connecting the line with
the starting point.
(4) A dialogue box appears asking if the lines have to be joined. Confirm by clicking on <Join> as shown in
Figure 3.10.
One-dimensional consolidation (oedometric compression test) 29

Figure 3.10: Joining points in GiD.

(5) Press <ESC> once to disconnect the cursor from the last point.
(6) Enter coordinates of the upper rectangle. In the dialogue box, always choose <Join> to connect to the
existing geometry.
⋄ 2D case: First point: 0.1 1 <ENTER>
2D case: Second point: 0.1 1.1 <ENTER>
2D case: Third point: 0 1.1 <ENTER>
2D case: Fourth point: 0 1 <ENTER>

⋄ 3D case: First point: 0.1 1 0 <ENTER>


3D case: Second point: 0.1 1.1 0 <ENTER>
3D case: Third point: 0 1.1 0 <ENTER>
3D case: Fourth point: 0 1 0 <ENTER>

(7) Press <ESC> twice to quit the line creating process.

To resize the view of the geometry, click on the icon <Zoom frame> in the sidebar OR choose <View> <Zoom>
<Frame> from the menu as shown in Figure 3.11.

(a) (b)

Figure 3.11: Resizing view in GiD: (a) sidebar button or (b) drop-down menu.

The geometry of the oedometer problem after creating lines should look like as shown in Figure 3.12.
30 Anura3D MPM Software, Tutorial Manual

Figure 3.12: Geometry of the oedeometer problem after creating lines (2D and 3D case).

Creating surfaces (for 2D and 3D case)


The surfaces are created in the following way.
(1) Click on the icon <Create NURBS Surface> in the sidebar OR choose <Geometry> <Create> <NURBS
surface> <By contour> from the menu as shown in Figure 3.13.

(a) (b)

Figure 3.13: Creating surfaces in GiD: (a) sidebar button or (b) drop-down menu.

(2) Select the four boundary lines of the upper rectangle by clicking with the cursor on each line. After
selection each line should turn red as shown in Figure 3.14a.
(3) Press <ESC> once to leave the selection of lines. The created surface appears in the upper rectangle as
shown in Figure 3.14b.
One-dimensional consolidation (oedometric compression test) 31

(a) (b)

Figure 3.14: Example of (a) selected lines and (b) created surface.

(4) Repeat the previous two steps for the lower rectangle.
(5) Press <ESC> twice to quit the surface creating process.

The geometry of the oedometer problem after creating surfaces should look like as shown in Figure 3.15. For
the 2D case, one can continue to define the material properties in Section 3.2.4. For the 3D case, volumes
have to be created as described below.

Figure 3.15: Geometry of the oedeometer problem after creating surfaces (2D and 3D case).

Creating volumes (only for 3D case, for the 2D case continue with Section 3.2.4)
Once the surfaces are created, the column volume can easily be created by extruding the surface in z-
direction. The following steps should be taken in order to extrude the surface entities to volumes.
(1) Choose <Utilities> <Copy...> from the menu as shown in Figure 3.16.
32 Anura3D MPM Software, Tutorial Manual

Figure 3.16: Open dialogue box to copy entities in GiD.

(2) In the "Copy" dialogue box make the following selections:


⋄ Select "Entities type" as "Surfaces".
⋄ Set "Transformation" to "Translation".
⋄ Enter the extrusion vector. In this case the second point is (0.0, 0.0, 0.1).
⋄ Select "Do extrude" as "Volumes".
⋄ Keep the other options as selected by default.
The dialogue box should look like shown in Figure 3.17.

Figure 3.17: Open dialogue box to copy entities in GiD.

(3) Click on "Select" in order to select the surfaces that should be extruded.
(4) Select the surface of the upper rectangle by clicking with the cursor on the surface. After selection the
surface should turn red as shown in Figure 3.18.
One-dimensional consolidation (oedometric compression test) 33

Figure 3.18: Illustration of selected surface (upper surface) for creating volume entities.

(5) Select the surface of the lower rectangle by clicking with the cursor on the surface. The surface should
turn red once selected.
(6) Press <ESC> once to leave the selection of surface.
(7) Back in the "Copy" dialogue box click on <Cancel> to quit the volume creating process.

To rotate the view of the geometry, click on the icon <Rotate trackball> in the sidebar OR choose <View>
<Rotate> <Trackball> from the menu as shown in Figure 3.19. It is also possible to press <shift> + right button
on mouse (keep both pressed down) and move the mouse to navigate around.

(a) (b)

Figure 3.19: Rotating view in GiD: (a) sidebar button or (b) drop-down menu.

The geometry of the oedometer problem for the 3D case after creating volumes should look like shown in
Figure 3.20.
34 Anura3D MPM Software, Tutorial Manual

Figure 3.20: Geometry of the oedometer problem after creating volumes (3D case).

3.2.3 Defining unit and dimentions in 2D and 3D


Before starting defining materials and assign condition to the model, it is required to choose model dimensions
and material point discretization type. The following steps are required.

(1) Choose <Anura3D > <Unit and dimensions> from the data-tree as shown in Figure 3.21

Figure 3.21: Define the model dimentions.

(2) The "Problem dimensions" dialogue box appears. Select either "2D plane-strain" or "3D" according to the
model dimension you are considering.
(3) In the "MPM discretization type" box define the discretization type you need. In this example we will
consider "Single-point".
One-dimensional consolidation (oedometric compression test) 35

3.2.4 Defining material properties


In this example, the oedometric compression of a saturated soil column will be analysed. The soil is repre-
sented by a two-phase material with fully coupled behaviour. The soil constitutive behaviour is linear elastic
and the material parameters are given in Table 3.2. The following steps have to be taken in order to define
the material parameters.

(1) Choose <Anura3D > <Materials> from the datatree.


(2) A standard material "Material 1" will appear. Select it and press "F2" or right click "Rename" and enter an
appropriate name for the material, as shown in Figure 3.22. Confirm by clicking on the <Enter> button.

Figure 3.22: Defining material name in GiD.

(3) Enter the values for the material parameters as given in Table 3.2 and shown in Figure 3.23.
⋄ Select "Material type" as "saturated material – fully coupled" from the drop down menu.
⋄ Set "initial porosity" to "0.4".
⋄ Set "density solid" to "2650".
⋄ Set "density liquid" to "1000".
⋄ Keep "K0-value" as "0.0". Note that this value is not used for the current example.
⋄ Set "intrinsic permeability liquid" to "1.0214e-9".
⋄ Set "bulk modulus liquid" to "2.15e4".
⋄ Set "dynamic viscosity liquid" to "1.002e-6".
⋄ Select "solid material model" as "Linear Elasticity" from the drop down menu.
⋄ Set "effective Poisson ratio" to "0.3".
⋄ Set "effective Young’s modulus" to "1000".
36 Anura3D MPM Software, Tutorial Manual

Figure 3.23: Defining material properties for oedometer problem in GiD.

3.2.5 Specifying material points in 2D and 3D


The material points will be distributed throughout the domain that is filled with material, by assigning the initial
number of material points per element. The following steps have to be taken to specify the material point
distribution. In the same procedure the user assigns the material type and, if needed, the value of damping to
material points.
(1) Choose <Anura3D > <Material Point Specification> from the data-tree in case of 2D or 3D simulation.
(2) The "Material Point Specification" dialogue box appears below the data-tree. The material model, number
of material points and material viscous damping have to be specified as is done in Figure 3.24.
⋄ For the 2D case, select the Material name at the corresponding top window. Then, enter "3" in the
"Number of Material points" field. Note that for triangular elements 1 or 3 material points can be placed
initially in an element. No damping is considered in this case. Click on the <Select> button in order to
select the surfaces to which the material points should be assigned to.
⋄ For the 3D case, select the Material name at the corresponding top window. Then, enter "4" in the
"Number of Material points" field. Note that for tetrahedral elements 1, 4, 7, 8, 10, 13 or 20 material
points can be placed initially in an element. Click on the <Select> button in order to select the volumes
to which the material points should be assigned to.
One-dimensional consolidation (oedometric compression test) 37

(a) (b)

Figure 3.24: Assigning material points to geometrical entities in GiD: (a) surfaces for 2D case
and (b) volumes for 3D case.

(3) Select the geometrical entity (surface in 2D, volume in 3D). Selected geometrical entities appear high-
lighted in red.
(4) Press <ESC> OR click on <End> to leave the selection of geometry entities. A group collecting multiple
surfaces or volumes is created.
(5) Check if the material points are assigned correctly. Right click on "Material Point Specification" dialogue
box, then click on <Draw> and select <Draw Values>.
(6) The material point specification of the oedometer problem should look like as shown in Figure 3.25.
38 Anura3D MPM Software, Tutorial Manual

(a)

(b)

Figure 3.25: Checking assigned material points per element for oedometer problem: (a) 2D case
and (b) 3D case.

(7) Click on <Finish> to quit the material points drawing.

3.2.6 Defining boundary conditions in 2D and 3D


Applying fixities in 2D and 3D
The displacement at the boundaries will be fixed in normal direction and free in the tangential directions for
both the solid phase and the liquid phase. Note that by defining fixities for the liquid phase at the bottom
boundary, this boundary will be impervious and the drainage length will hence be 1m.
(1) Choose <Anura3D > <Fixities> from the data-tree.
One-dimensional consolidation (oedometric compression test) 39

Figure 3.26: Open dialogue box to define fixities in GiD.

(2) The "Fixities" dialogue box appears. A two-phase problem will be considered in this example. The condi-
tions for the solid and water phase have to be applied separately.
⋄ For the 2D case, fixities have to be applied on lines. Therefore, select the line icon at the bottom of
the window as shown in Figure 3.27.
⋄ For the 3D case, fixities have to be applied on surfaces. Therefore, select the surface icon at the
bottom of the window as shown in Figure 3.28(b).
40 Anura3D MPM Software, Tutorial Manual

(a)

(b)

Figure 3.27: Selecting line fixities and choosing (a) solid and (b) liquid fixities
One-dimensional consolidation (oedometric compression test) 41

(a)

(b)

Figure 3.28: Selecting surface fixities and choosing (a) solid and (b) liquid fixities

(3) For both solid and liquid fixities, tick the checkbox "x-direction", and click on the <Select> button to select
the geometrical entities that should be fixed in x-direction.
⋄ 2D case: Select the two lines on the left side and the two lines on the right side by clicking on them.
The selected lines should be highlighted in red.
⋄ 3D case: Select the two surfaces on the left side and the two surfaces on the right side by clicking on
them. The selected surfaces should be highlighted in red.
(4) Press <ESC> OR click on <End> in the "Fixities" dialogue box to leave the selection of geometrical entities.
(5) Click on <OK>.
(6) Now constraints in y-directions will be assigned. Double-Click on <Solid Fixities> or <Liquid Fixities> to
assign a new fixity.
(7) Tick the checkbox "y-direction" and click on the <Select> button to select the geometrical entities that
should be fixed in y-direction.
⋄ 2D case: Select the line at the very top of the geometry and the line at the very bottom of the geometry
by clicking with the cursor on them. The selected lines should be highlighted in red.
⋄ 3D case: Select the surface at the very top of the geometry and the surface at the very bottom of the
geometry by clicking with the cursor on them. The selected surfaces should be highlighted in red.
42 Anura3D MPM Software, Tutorial Manual

(8) Press <ESC> OR click on <End> in the "Fixities" dialogue box to leave the selection of geometrical entities.
(9) Click on <OK>.
(10) For the 3D case only, we will assign constraints in z-directions. Double-Click on <Solid Fixities> or <Liquid
Fixities> to assign a new fixity, then:
⋄ Tick the checkbox "z-direction"
⋄ Click on the <Select> button in order to select the surfaces that should be fixed in z-direction.
⋄ Select the two surfaces on the front side and the two surfaces on the back side by clicking with the
cursor on them. After selection the surfaces should turn red.
⋄ Press <ESC> OR click on <End> in the "Fixities" dialogue box to leave the selection of surfaces.
⋄ Click on <OK>.
(11) Check if the fixities are assigned correctly. Right click on the "Solid Fixities" or "Liquid Fixities" dialogue
box click on <Draw> and select <Draw Value>.
(12) For example, the assigned solid fixities of the oedometer problem should look like Figure 3.29.

(a)

(b)

Figure 3.29: Checking assigned fixities for oedometer problem: (a) 2D case and (b) 3D case.

(13) Click on <Finish>.

Applying loading conditions in 2D and 3D


A vertical load of q = 400 kPa will be applied at the top of the soil column.

(1) Choose <Loading Conditions> from the data-tree.


(2) The "Loading Conditions" dialogue box appears.
(3) The load will be applied on the soil. Therefore, double click on the "Solid Traction" option from the menu
One-dimensional consolidation (oedometric compression test) 43

as shown in Figure 3.30(a) for the 2D case (the load has to be applied on a line) and in Figure 3.30(b) for
the 3D case (the load has to be applied on a surface).

(a) (b)

Figure 3.30: Loading conditions dialogue box in GiD: (a) Selecting line solid traction for 2D case
and (b) selecting surface solid traction for 3D case.

(4) Enter the value of the load. A downward vertical load of 400 kPa will be applied. Therefore, enter "-400.0"
in the field "y-direction [kPa]" as shown in Figure 3.30.
(5) As a large deformation problem is considered, the load has to move together with the material. Therefore,
select "material points" from the drop down menu "apply traction on" as shown in Figure 3.30.
(6) Click on the <Select> button in order to select the geometrical entities that the load should be assigned
to. In 2D only lines can be selected. In 3D only, surfaces can be selected. Selected entities appear
highlighted in red.
⋄ 2D case: Select the horizontal line between the two surface.
⋄ 3D case: Select the horizontal surface between the two volumes.
(7) Within the Anura3D 2023 problemtype it is possible to assign a load to either Load System A or Load
System B. This example only uses one load system and as such, the load is applied to Load System A.
(8) Press <ESC> OR click on <END> in the "Loading Conditions" dialogue box to leave the selection of
geometrical entities.
(9) Press <Ok>
(10) Check if the load is assigned correctly. In the "Loading Conditions" dialogue box click on <Draw> and
select <Draw values>.
(11) The assigned load of the oedometer problem should look like as shown in Figure 3.31.
44 Anura3D MPM Software, Tutorial Manual

(a) //

(b)

Figure 3.31: Checking assigned loads for oedometer problem. a) 2D case; b) 3D case.

(12) Click on <Finish> to end the "Draw values" mode.

3.2.7 Creating mesh in 2D and 3D


In Anura3D two element types are available as follows.
⋄ Triangular elements for 2D calculations
⋄ Tetrahedral elements for 3D calculations

Due to the implementation in the Anura3D programme kernel, 2D triangular elements have to be defined as
linear type elements, and 3D tetrahedral elements have to be defined as quadratic type elements in GiD. It is
important to ensure that the correct element type is chosen which is described in the following for both the 2D
and 3D case.

It is possible to generate meshes in GiD in a very flexible way. If necessary, the mesh can be refined assigning
a proper size by selecting <Mesh> <Unstructured> <Assign sizes...>, or a structured/semi-structured mesh
can be generated. In this example, a semi-structured mesh is used.
(1) First the element type has to be set.
⋄ 2D case: In the GiD main menu <Mesh>, choose the option <Quadratic type> and select the option
"Normal" as shown in Figure 3.32(a). Then in the main menu <Mesh>, choose the option <Element
type> <Triangle> (Fig. 3.33a) and select all surfaces.
One-dimensional consolidation (oedometric compression test) 45

⋄ 3D case: In the GiD main menu <Mesh>, choose the option <Quadratic type> and select the option
"Quadratic" as shown in Figure 3.32(b). Then in the main menu <Mesh>, choose the option <Element
type> <Tetrahedra> (Fig. 3.33b) and select all volumes.

(a) (b)

Figure 3.32: Select element type in GiD: (a) For 2D case as "Normal" and (b) For 3D case as
"Quadratic".

(a) (b)

Figure 3.33: Select element type in GiD: (a) For 2D case use triangles and (b) For 3D case use
tetrahedra.

(2) In order to generate a structured mesh:


⋄ 2D case: In the GiD main menu <Mesh>, choose the option <Structured> <Surfaces> <Assign size>.
Then select all the surfaces and press esc. GiD will ask the mesh size to assign to lines; enter 0.1.
Click <Assign> and select all the lines (Fig. 3.34a).
⋄ 3D case: In the GiD main menu <Mesh>, choose the option <Semi-Structured> <Volumes>. GiD
will ask the number of divisions, enter 10, click <Assign>, select the bottom volume and press Esc.
Again GiD will ask the number of divisions, enter 1, click <Assign>, select the top volume and press
46 Anura3D MPM Software, Tutorial Manual

Esc. Now go in the GiD main menu <Mesh>, choose the option <Semi-Structured> <Set> <Structured
direction> and select all vertical lines (Fig. 3.34b).

(a)

(b)

Figure 3.34: Create structured mesh in GiD: (a) For 2D case and (b) For 3D case.

(3) Click on the icon <Toggle geometry-mesh view> in the sidebar OR choose <Mesh> <Generate Mesh...>
from the menu as shown in Figure 3.35 OR press <CTRL>+<G>.
One-dimensional consolidation (oedometric compression test) 47

(a) (b)

Figure 3.35: Generating mesh in GiD: (a) sidebar button and (b) drop-down menu.

(4) The "Mesh generation" dialogue box appears.


Set the element size to "0.1" as shown in Figure 3.36. This corresponds to the minimum side length of
the soil column and therefore ensures an optimum mesh size.

Figure 3.36: Defining generic element size for meshing in GiD.

(5) Click the <OK> button. The mesh will be generated and the progress is shown in the "Progress in meshing"
dialogue box as shown in Figure 3.37. Note that depending on the meshing preferences the number of
generated nodes and elements can change.
⋄ 2D case: The number of generated linear triangular elements (e.g., 22) can be seen as well as the
number of generated nodes (24).
⋄ 3D case: The number of generated quadratic tetrahedal elements (e.g., 66) can be seen as well as
the number of generated nodes (207).
48 Anura3D MPM Software, Tutorial Manual

(a) (b)

Figure 3.37: Information on meshing progress in GiD: (a) 2D case and (b) 3D case.

(6) Click on the <View mesh> button to quit the meshing process and see the generated mesh.

The mesh with element size of 0.1 for the oedometer problem should look like as shown in Figure 3.38.

(a) (b)

Figure 3.38: Mesh of the oedometer problem: (a) 22 triangular elements for 2D case and (b) 66
tetrahedral elements for 3D case.
One-dimensional consolidation (oedometric compression test) 49

The quality of the generated mesh can easily be assessed. Choose <Mesh> <Mesh quality...> in the menu.
The "Mesh quality" dialogue box appears and mesh properties can be assessed as shown in Figure 3.39.
Several quality criteria can be selected.

(a) (b)

Figure 3.39: Assessing mesh quality in GiD: (a) 2D case and (b) 3D case.

3.2.8 Initialisation of calculation data


To perform a calculation with Anura3D , several calculation parameters need to be defined. These parame-
ters control the calculation process and features that can be enabled or disabled as e.g. contact algorithm,
damping, smoothing, etc. The calculation parameters can be defined as described below.

Computation method
The computation method used in this example is the Gauss point integration for fully filled elements and
material point integration for partially filled elements. Therefore, the option "MPM – mixed integration" should
be selected.

Calculation step data


The compression of the soil column will be analysed for a total time of t = 2.5 s. To create intermediate results,
the total time is divided into 50 calculation steps of ∆t = 0.05 s each. A Courant number of 0.98 is advised to
ensure the stability of the solution.

Gravity load
By default, initial stresses are zero. In this example, gravity is neglected. Therefore, select to not apply a
gravity load. The values for gravity data can be kept at their default values, but are not used in the calculation
anyway.

External load (solid traction)


The external load is applied suddenly, i.e. in the very first time step, on top of the soil column and is maintained
constant throughout the calculation. Therefore, set the solid traction loading type as "apply solid traction –
stepwise" and set the solid traction multipliers as 1.0 (initial and final value). As Load System A was selected
in Section 3.2.6, be sure to select Solid Traction A, and apply the multipliers to this load system.

Postprocess Visualization
Within Anura3D 2023 , the postprocessing can be achieved using either ParaView or GiD. This example will
50 Anura3D MPM Software, Tutorial Manual

detail visualisation through both of them, therefore "GiD and Paraview visualization" should be selected.

Output data
Three material points will be selected for additional output; additional files will be printed for these points.
These points are located close to the top, centre and bottom of the column, respectively. Section 3.4.7
explains how to determine the ID number of a material point.
⋄ 2D case: The three material points have ID numbers 3, 33 and 59.
⋄ 3D case: The three material points have ID numbers 3, 54 and 235.

Default values
All other calculation options are not used in this example and the provided default values can be kept, i.e.
regarding contact algorithm, smoothing algorithms, quasi-static convergence.

The following steps have to be taken in order to define the calculation parameters.

(1) Choose <Calculation Data> from the data-tree.


(2) Enter the values for the calculation parameters as given below and shown in Figure 3.40.
⋄ Select "COMPUTATION METHOD" as "MPM – mixed integration".
⋄ Set "number of calculation steps [-]" to "50".
⋄ Set "time per calculation step [s]" to "0.05".
⋄ Set "Courant number" to "0.98".
⋄ Select "SOLID TRACTION A" as "apply solid traction – stepwise".
⋄ Set "solid traction A multiplier initial [-]" to "1.0".
⋄ Set "solid traction A multiplier final [-]" to "1.0".
⋄ Set "POSTPROCESS VISUALIZATION OPTIONS" to "GiD and Paraview visualization"
⋄ Select "number of material points" as "3" from the drop down menu.
⋄ Set material point IDs in "material point #1, #2 and #3" as
2D case: "3", "33" and "59" respectively;
3D case: "3", "54" and "235" respectively.
All other calculation parameters can be kept at their default values.
One-dimensional consolidation (oedometric compression test) 51

Figure 3.40: Dialogue box to define calculation data in GiD

3.2.9 Generating Anura3D input files GOM and CPS


After geometry, material properties, boundary conditions, loading conditions and calculation parameters are
defined and the mesh is generated the input files for the Anura3D analyis, i.e. GOM and CPS file, have to be
created. In those files the input parameters generated by GiD are stored in text file format and can be read by
the Anura3D programme. To generate the GOM and CPS file the following steps have to be taken.

(1) Choose <Anura3D> <Generate Anura3D Files> from the menu as shown in Figure 3.41 OR press <Ctrl>+<B>.
52 Anura3D MPM Software, Tutorial Manual

Figure 3.41: Generating Anura3D input files GOM and CPS in GiD.

(2) A warning box (Anura3D - generating Anura3D files) appears to make sure that all previous steps have
been performed. Choose <OK>.
(3) The generation of the GOM and CPS files is started and at the end the "Process info" box as shown in
Figure 3.42 should appear indicating that the files are successfully created.

Figure 3.42: Generation of GOM and CPS files successfully finished in GiD.

(4) Click on the <OK> button to finish the process of generating Anura3D input files.
(5) Save the project. Click on icon <Save GiD project> in the sidebar OR select <File> <Save> from the menu
as shown in Figure 3.6 OR press <CTRL>+<S>.

The pre-processing in GiD is finished and the programme can be closed.

The generated input files oedometer.GOM and oedometer.CPS_001 can be found in the project directory
oedometer.A3D in the directory which was specified earlier by the user (Section 3.2.1, step 5):
D:\..\oedometer.A3D\oedometer.GOM

D:\..\oedometer.A3D\oedometer.CPS_001

The input files GOM and CPS can be opened and adapted with any text editor.

3.3 Performing calculation in Anura3D


After the input files are generated in GiD as explained in the previous Section 3.2.9 a new folder is generated
in the directory that was specified earlier by the user (Section 3.2.1, step 4), i.e. oedometer.A3D:
D:\..\oedometer.A3D
One-dimensional consolidation (oedometric compression test) 53

This folder should contain the following files that are necessary to perform an Anura3D calculation, i.e:
⋄ D:\..\oedometer.A3D\oedometer.GOM
⋄ D:\..\oedometer.A3D\oedometer.CPS_001
⋄ D:\..\oedometer.A3D\calculate.bat
⋄ D:\..\oedometer.A3D\Anura3D_2024.exe

The Anura3D calculation can now be started. There are two options to perform the analysis:
⋄ using the batch file;
⋄ using the command line.

3.3.1 Calculation using batch file


To run the calculation using the batch file the following steps have to be taken.
(1) In the "Windows File Explorer" change into the project directory D:\..\oedometer.A3D.
(2) Double-click on the batch file calculate.bat.

The calculation starts and output is generated in the "Command Line" window indicating the progress of the
calculation. Any input and calculation errors are displayed in this window. The output files are generated and
stored in the project directory D:\..\oedometer.A3D.

3.3.2 Calculation using command line


To run the calculation in the command line window the following steps have to be taken.

(1) In Windows start the "Command Line" window. Click on the "Command Prompt" desktop icon as shown in
Figure 3.43a OR from the Windows Start Menu select "Run...", type "cmd" and press <ENTER> as shown
in Figure 3.43b.

(a) (b)

Figure 3.43: Start "Command Prompt" in Windows.

(2) Change working location in the project directory. At the command prompt, type the name of the disk drive
where you stored the project data. For example, "D:" and press <ENTER>.

C:\...\user\username\>D:

(3) Change into your previously chosen directory by typing "cd userdirectory" and press <ENTER>.

D:\>cd userdirectory

(4) Change into the project directory by typing "cd oedometer.A3D" and press <ENTER>.

D:\userdirectory\>cd oedometer.A3D
54 Anura3D MPM Software, Tutorial Manual

(5) Run the calculation in the project directory by typing the name of the programme executable "Anura3D_2024"
followed by the name of the calculation project, "oedometer", in this example.

D:\userdirectory\oedometer.A3D\>Anura3D_2024 oedometer

The calculation starts and output information is generated in the "Command Line" window indicating the
progress of the calculation. Any possible input and calculation errors are displayed in this window. The output
files are generated and stored in the project directory D:\..\oedometer.A3D.

3.4 Visualisation of results in ParaView


The recommended way to visualise Anura3D results is by using the ParaView software (see Section 2.5 for
installation instructions). ParaView is able to read output files with VTK extension. Information of the mesh
and material points is stored in these files at the end of each calculation step as explained previously in
Section 2.1.3.

The results for the oedometer problem are presented in this section. First, the VTK files will be opened
with ParaView and the evolution of liquid pressures and solid displacements across the soil column will be
presented. Finally, the results of specific material points are shown in Section 3.6.

3.4.1 Opening ParaView


(1) Start the ParaView post-processor (version 5.7.0) by clicking on the Windows desktop icon as shown in
Figure 3.44.

Figure 3.44: Start the ParaView post-processor (version 5.7.0).

3.4.2 Loading the VTK output files


(1) Open the output files: Click the icon <Open> OR select <File> and <Open...> from the menu as shown in
Figure 3.45 OR press <Ctrl>+<O>.
One-dimensional consolidation (oedometric compression test) 55

(a) (b)

Figure 3.45: Open the VTK output files in ParaView: (a) sidebar button or (b) drop-down menu.

(2) Switch to the directory of your project in the "Open File" dialogue box.
(3) Select all VTK files that appear in your project directory in the "Open File" dialogue box and press <OK>
as shown in Figure 3.46.

Figure 3.46: Select the VTK otput files that appear in the project directory.

(4) Four file directories appear in the "Pipeline Browser" window with file names as indicated in Figure 3.47.

Figure 3.47: Output VTK files in the "Pipeline Browser" window in ParaView.

(5) In the "Properties" window click <Apply> to load all data from the VTK output files into ParaView (Fig-
ure 3.48a). Once the four file directories are loaded, note that a black symbol of an "eye" appears in
front of the name of each directory, as indicated in Figure 3.48b. This means that four type of results are
displayed in the "Layout #1" window.
56 Anura3D MPM Software, Tutorial Manual

(a) (b)

Figure 3.48: Loading output VTK files in ParaView: (a) sidebar button or (b) drop-down menu

3.4.3 Showing the mesh in 2D and 3D


The mesh data is stored in oedometer_MeshData_0.
(1) Click on the black "eye" symbols that appear in front of the last three files. The "eye" symbols change
colour to grey as shown in Figure 3.49 which means that all data from material points is not displayed.

Figure 3.49: Deactivate data in ParaView.

(2) In order to visualise the mesh click on oedometer_MeshData_0 in the "Pipeline Browser" window. Select
"active_elements" in the first drop down menu and select "Wireframe" in the third drop down menu as
shown in Figure 3.50.
One-dimensional consolidation (oedometric compression test) 57

Figure 3.50: Visualisation of the mesh in ParaView.

(3) Use the mouse wheel to zoom in and out the view of the results. Press the left mouse button to rotate the
view if necessary. The buttons indicated in Figure 3.51 can also be used to change the point of view of
the results.

Figure 3.51: Buttons to change the view point of the results in ParaView.

(4) The general view of the mesh should look like as shown in Figure 3.52.

(a) (b)

Figure 3.52: View of the mesh, active and empty elements in ParaView for the oedometer prob-
lem: (a) 2D case and (b) 3D case.
58 Anura3D MPM Software, Tutorial Manual

3.4.4 Change view settings to parallel projection (for 3D case only)


For a better visualisation of the three-dimensional model, it is advised to use the parallel projection method.
To change the view settings follow the steps below. For the 2D case continue with Section 3.4.5.
(1) In the "Properties" window click on the "Toggle advanced properties" icon as shown in Figure 3.53.

Figure 3.53: Select advanced properties to change view settings.

(2) Scroll to the bottom of the "Properties" window.


(3) Select the option "Camera Parallel Projection" to change the view settings as shown in Figure 3.54.

Figure 3.54: Select "Camera Parallel Projection".

(4) Save the new settings as default view settings by clicking on the "Save current view settings values as
default" icon as shown in Figure 3.54.
One-dimensional consolidation (oedometric compression test) 59

(5) Switch off the advanced view settings by clicking on the "Toggle advanced properties" again as shown in
Figure 3.53.

This is a one-time action. After restarting ParaView, the view is by default in parallel projection.

3.4.5 Visualisation of liquid pressure in 2D and 3D


The liquid pressure is a scalar state variable stored in oedometer_MPScalar_0.
(1) Click on the "eye" symbol just next to oedometer_MPScalar_0 in the "Pipeline Browser" window to dis-
play the data from this file in the window. All scalar data allocated at the material points is available
in oedometer_MPScalar_0 and the possible options are shown in the first drop down menu. Select
"pressure_liquid" as indicated in Figure 3.55 to visualise the liquid pressure at the material points.

Figure 3.55: Select "pressure_liquid" in the drop down menu.

(2) Increase the size of the material points to 10 in the "Properties" window as indicated in Figure 3.56.
Note that occasionally the "Toggle advanced properties" icon has to be clicked first to be able to see the
advanced settings.
60 Anura3D MPM Software, Tutorial Manual

Figure 3.56: Increase the point size of the material points.

(3) Select <Show/hide colour legend> in the "Properties" window as indicated in Figure 3.57 in order to show
the colour scale of the liquid pressure on the screen.

Figure 3.57: Show the colour scale in the "Layout #1" window.

(4) The scale can be adjusted according to the data range as indicated in Figure 3.58(a). It also can be
customised manually as indicated in Figure 3.58(b).
One-dimensional consolidation (oedometric compression test) 61

(a) (b)

Figure 3.58: Options to adjust the data scale: (a) rescale to data range (automatic rescaling)
and (b) rescale to custom range.

(5) For this case, the second option is preferable. In the "Set Range" window, type "-400" as minimum value
and "0" as maximum value as shown in Figure 3.59. Units are in kPa.

Figure 3.59: Adjust scale to a custom range.

(6) Use the commands from the menu indicated in Figure 3.60 to see the animated evolution of liquid pres-
sure. Here the first 50 steps are chosen.

Figure 3.60: Commands to view the evolution of the results as an animation in ParaView.

(7) In the "Animation View" menu, select the "Real Time" Mode as indicated in Figure 3.61. Here, the duration
of the movie can be specified (in seconds).

Figure 3.61: Commands to view the evolution of the results as an animation in ParaView.

(8) The evolution of liquid pressure in the soil column is presented in in Figure 3.62 for the 2D case and in
Figure 3.63 for the 3D case. Initially, the liquid pressure is zero, and shortly after increases suddenly
to –400 kPa as a reaction of applying the external load on the top of the soil column. Later on, the
pressure dissipates more rapidly at the top of the soil column as the top boundary is permeable, whilst
62 Anura3D MPM Software, Tutorial Manual

the dissipation in deeper material points is slower as the bottom boundary is impervious. Finally, after 2.5
seconds of calculation, the liquid pressure along the soil column is essentially fully dissipated.

(a) (b) (c) (d) (e) (f) (g)

Figure 3.62: Evolution of liquid pressure for the 2D case: (a) t = 0 s, (b) 0.05 s, (c) 0.1 s, (d)
0.2 s, (e) 0.5 s, (f) 1 s and (g) 2.5 s.

(a) (b) (c) (d) (e) (f) (g) (h)

Figure 3.63: Evolution of liquid pressure for the 3D case. (a) t = 0 s, (b) 0.05 s, (c) 0.1 s, (d)
0.2 s, (e) 0.5 s, (f) 1 s, (g) 2.5 s and (h) 0.2 s (3D view).
One-dimensional consolidation (oedometric compression test) 63

3.4.6 Visualisation of soil displacement in 2D and 3D


The soil displacement is a vector variable stored in oedometer_MPVector_0.
(1) Click on the "eye" symbol next to oedometer_MPScalar_0 in the "Pipeline Browser" window to hide the
MPScalar data.
(2) Click on the "eye" symbol next to oedometer_MPVector_0 in the "Pipeline Browser" window to display the
MPVector data. All vector data of the material points available is shown in the first drop down menu. Select
"displacement_solid" to visualize the displacements of the material points as indicated in Figure 3.64.

Figure 3.64: Select "displacement_solid" in the drop down menu.

(3) Customise the point size and the colour scale as described previously for the liquid pressure to see the
evolution of soil displacements.
(4) The evolution of solid displacements is presented for the 2D case in Figure 3.65 and for the 3D case in
Figure 3.66. An external load of 400 kPa is applied on top of the soil column and a consolidation process
appears due to dissipation of liquid pressures. The final displacement of the top of the soil column is
0.24m. It is important to highlight that this is a large deformation problem.
64 Anura3D MPM Software, Tutorial Manual

(a) (b) (c) (d) (e) (f) (g)

Figure 3.65: Evolution of solid displacement for the 2D case: (a) t = 0 s, (b) 0.05 s, (c) 0.1 s, (d)
0.2 s, (e) 0.5 s, (f) 1 s and (g) 2.5 s.

(a) (b) (c) (d) (e) (f) (g) (h)

Figure 3.66: Evolution of solid displacement for the 3D case: (a) t = 0 s, (b) 0.05 s, (c) 0.1 s, (d)
0.2 s, (e) 0.5 s, (f) 1 s, (g) 2.5 s and (h) 2.5 s (3D view).

3.4.7 Determining the material point ID


To create material point output in Anura3D the material point ID is required. The ID can be retrieved from
ParaView. The material point ID is required in the "Calculation Data" window during pre-processing in GiD as
explained in Section 3.2.8. The process is explained for the 3D case but can equivalently be adopted for the
2D case.

(1) Make sure that the mesh and scalar properties are active. Click on the "eye" symbol next to oedometer_MeshData_0
and oedometer_MPScalar_0. From the scalar data, select the desired variable to be visualised – e.g.
"material_id" as indicated in Figure 3.67. Note that the property "material_id" is chosen for a convenient
visualisation in uniform colour, any other property can be chosen as well.
One-dimensional consolidation (oedometric compression test) 65

Figure 3.67: Select "material_id" in the drop down menu.

(2) In the "Layout #1" window, click on the "Split Horizontal" icon as indicated in Figure 3.68 to add an addi-
tional output window in which the material point data will be shown.

Figure 3.68: Creating additional output window by splitting view.

(3) In the new window, click on "SpreadSheet View" button as indicated in Figure 3.69 to show the spread-
sheet.
66 Anura3D MPM Software, Tutorial Manual

Figure 3.69: Choose "SpreadSheet View" in the new output window.

(4) In the spreadsheet click, on a material point number and the respective point will be highlight in the
geometry as indicated in Figure 3.70.

Figure 3.70: Highlight specific material point in geometry.

(5) To assess the ID of a particular material point from the geometry click on the "Select Points On" icon in
the "Layout #1" window as indicated in Figure 3.71(a). Then click on the material point, which should be
assessed as shown in Figure 3.71(b). Repeat this action for three points at the top, middle and bottom of
the soil column. Note: Keep the <Ctrl>-key pressed to select multiple points.
One-dimensional consolidation (oedometric compression test) 67

(a) (b)

Figure 3.71: Select specific material points in geometry: (a) sidebar button or (b) drop-down
menu.

(6) In the "SpreadSheet View" window, click on the "Show only selected elements" icons as shown in Fig-
ure 3.72. The IDs of the three selected points can be seen as well as all other information stored in the
selected points.

Figure 3.72: Show selected material points in spreadsheet.


68 Anura3D MPM Software, Tutorial Manual

3.4.8 Plotting time graphs for material points


In ParaView, several options for plotting time graphs are available. The process is explained for the 3D case
but can equivalently be adopted for the 2D case. Three alternatives are explained below:
⋄ Plot point over time;
⋄ Plot two variables at same time;
⋄ Plot multiple points.

Plot point over time


As an example, the liquid pressure in one material point at the bottom of the soil column will be plotted over
time. The following steps should be taken.
(1) Make sure that the VTK files containing the data are loaded into the "Pipeline Browser".
Make sure that you have clicked on the <Apply> button in the "Properties" window.
Make sure that the viewing of data is turned on (active "eye"-symbol) as shown in Figure 3.73.

Figure 3.73: Turn on the "pressure_liquid" data for the oedometer problem in ParaView.

(2) First, select a point at the bottom of the geometry for which the data should be plotted. See Section 3.4.7
on how to select a specific material point. Click on "Select Points On" icon and, then, click on a point at
the bottom of the soil column.
(3) Choose <Filters> <Data Analysis> <Plot Selection Over Time> from the menu as shown in Figure 3.74.
One-dimensional consolidation (oedometric compression test) 69

Figure 3.74: Choose "Plot Selection over Time" in ParaView.

(4) Click on the "Apply" button in the "Properties" window as shown in Figure 3.75 to activate the graphs
window, which will then appear right next to the existing plot. Note that the material point ID can be
retrieved in the selection window; that is "234" for the current case.

Figure 3.75: Apply the graph plotting for the selected point.

(5) In the "Properties" window, scroll down to the "Display" tab. Unselect everything except "pressure_liquid"
as shown in Figure 3.76.
70 Anura3D MPM Software, Tutorial Manual

Figure 3.76: Choose plotting of "pressure_liquid" for the selected point.

(6) A plot of the liquid pressure at the selected point is created as shown in Figure 3.77. On the horizontal
axis the time step number is shown. On the vertical axis the liquid pressure in [kPa] is shown.

Figure 3.77: Plot of liquid pressure over time for the oedometer example (3D case).

The layout and appearance of the chart can be adapted according to the needs of the user by changing the
respective parameters in the "Properties" window. Press the play button to visualise the progress in the time
graph.
One-dimensional consolidation (oedometric compression test) 71

Plot two variables at same time


As an example, the liquid pressure and the solid volumetric strain in one material point at the bottom of the
soil column will be plotted over time. The following steps should be taken.
(1) Follow the steps for "Plot Selection Over Time", as described above.
(2) In the "Properties" window, turn on the additional variable "volumetric_strain_solid".
(3) Select the line that says "volumetric_strain_solid".
(4) In the "Properties" window scroll further down. At the bottom of the "Display" tab, change "Chart Axes" to
"BottomRight".
(5) A plot of the liquid pressure and the solid volumetric strain at the selected point is created as shown in
Figure 3.78.

Figure 3.78: Plot of liquid pressure and solid volumetric strain over time for the oedometer ex-
ample (3D case).

Plot multiple points


As an example the liquid pressure for three points at the top, middle and bottom of the soil column will be
plotted over time. The following steps have to be taken.
(1) Make sure that the VTK files containing the data are loaded into the "Pipeline Browser", that you have
clicked on the <Apply> button in the "Properties" window, and that the viewing of data is turned on (i.e.
active "eye"-symbol) as shown in Figure 3.73.
(2) To plot numerous points over time select the points by click on "Select Points On" icon. Then, select the
points that should be plotted; these are the top, middle and bottom of the soil column. Keep the <Ctrl>
key pressed while selecting the additional point.
(3) Choose <Filters> <Data Analysis> <Plot Selection Over Time> from the menu as shown in Figure 3.74.
(4) Click on the "Apply" button in the "Properties" window to activate the graphs window, which will then
appear right next to the existing plot.
(5) In the "Properties" window, unselect the "Only Report Selection Statistics" checkbox. Click on "Apply"
button.
(6) In the "Properties" window, display section, click on "Root" to switch on all three points.
(7) In the "Properties" window, scroll down to the "Display" tab. Unselect everything except "pressure_liquid"
for all three points.
(8) A plot of the liquid pressure at the selected points is created as shown in Figure 3.79.
72 Anura3D MPM Software, Tutorial Manual

Figure 3.79: Plot of liquid pressure for multiple points over time for the oedometer example (3D
case).

Multiple variables can be plotted for multiple points in the same way as described above. The layout and
appearance of the chart can be adapted according to the needs of the user by changing the respective
parameters in the "Properties" window.

3.5 Visualization of results in GiD


An alternative to visualizing results through Paraview is to use GiD. This GiD post-processor is automatically
installed when you install the GiD pre-processor as described in Section 2.4. GiD is able to read output files
in ASCII and Binary format. It is always recommended to work with Binary files.

Reading Anura3D results with GiD has some limitations. The only results that can be displayed are the
contour fields of all variables (scalar, vector and tensor) and for vector varaibles the vector with their magnitud
and direction. All the other options in the GiD post-process are not available for Anura3D.

Some results of the oedometer problem are presented in this section. First, Binary output files will be opened
with GiD and the evolution of liquid pressure across the soil column will be presented.

3.5.1 Opening GiD post-processor


(1) Start the GiD programme as described in Section 3.2.1. If already have it opened, it is not necessary to
open a new one, save the project and click on the pre/post-processor switching icon in the upper-right
side to access the post-processor interface (Figure 3.80).
One-dimensional consolidation (oedometric compression test) 73

Figure 3.80: Button to switch from pre to post-processor.

3.5.2 Loading Binary files


(1) Click the icon <Open> (Figure 3.81)

(a)

Figure 3.81: Open results in GiD post-processor with sidebar button.

(2) Switch to the directory of your project in the “Postprocess read several files” dialogue box and click on
the “oedometer.POST.Ist” file. The “.POST.Ist” file opens all load steps results. The option “Read every X
steps” is useful if results of a lower number of load steps are needed (Figure 3.82).
(3) Press <Open> as shown in Figure 3.82.
74 Anura3D MPM Software, Tutorial Manual

Figure 3.82: “Postprocess read several files” window for Binary format results.
3.5.3 Mesh and MPs visualization
The visualization of mesh and MPs is activated/deactivated in the “Style” window, which authomatically
appears in the right hand-side. To visualize the mesh contour and correctly visualize material points, set
the option in the style column as indicated in figure (Figure 3.83).

Figure 3.83: “Style” window with the configuration to see MPs and mesh as contour.
3.5.4 Change view settings
The view settings of the GiD post-process works exactly as the GiD pre-process (Figure 3.19).
One-dimensional consolidation (oedometric compression test) 75

3.5.5 Visualisation of liquid pressure in 2D and 3D


Go to Default Analysis/Step in the results sidebar (Figure 3.84a) and select load step 1 of the scalar
results.
Click on the Contour fill icon in the results sidebar (Figure 3.84b) and select <Pressure> and <Liquid>.

Figure 3.84: Select result type, load step and variable to visualize

Scale can be adjusted according to the data range. In this case the maximum is set to 0kPa and the
minimum to -400kPa (Figure 3.85).

Figure 3.85: Variable range adjustment.

Open the animate window icon and select “Total time” in Duration and move through load steps in the play
section (Figure 3.86).
76 Anura3D MPM Software, Tutorial Manual

Figure 3.86: Animation window

The evolution of liquid pressure in the soil column is shown in Figure 3.87 for the 2D case and in Fig-
ure 3.88 for the 3D case.

Figure 3.87: Evolution of liquid pressure for the 2D case: (a) 0.05 s, (b) 0.1 s,(c) 0.2 s, (d) 0.5 s
and (e) 2.5 s.
One-dimensional consolidation (oedometric compression test) 77

Figure 3.88: Evolution of liquid pressure for the 2D case: (a) 0.05 s, (b) 0.1 s,(c) 0.2 s, (d) 0.5 s
and (e) 2.5 s.
3.5.6 Determining the material point ID
The material point ID is not stored in the scalar results as in Paraview. To find the ID of specific ma-
terial point with GiD post-process click with the right button and go to <Label>, <Select on>, <Nodes>
(Figure 3.89). After that, enter <Ctrl+A> command and select the desired MPs.

Figure 3.89: (a) Procedure to determine MP ID (b) Label indicating the MP ID.
78 Anura3D MPM Software, Tutorial Manual

3.5.7 Plotting time graphs for material points


In GiD, several options for plotting time graphs are available. The process is explained for the 2D case but
can be equivalently adopted for the 3D case. Two alternatives are described below: plot point over time
and plot multyple variables in the same graph.
Plot point over time
Select scalar results and any time step as explained in section Section 3.4.5. Click on the graph icon
(Figure 3.90) and all the possible options open. Select plot data over time.

Figure 3.90: Plot liquid pressure over time procedure.

Enter <Ctrl+A> command, select one or more material points and press <Esc>. The graph in figure 3.91
displays the liquid pressure over time of a material point at the bottom of the column.

Figure 3.91: Liquid pressure over time of a MP located at the bottom of the column.

To export the graph data to an Excel worksheet, go to <Options>, select the desired graph set and click
on <show table>. The graph values are displayed and can be copied to a worksheet (Figure 3.92).
One-dimensional consolidation (oedometric compression test) 79

Figure 3.92: Graph window for showing values in table.

Plot multiple variables in a single graph


The GiD option to graph variables allows to add new graphs to the selected dataset. In order to graph in
a different graph set than the previous one, a new graph set has to be created, as shown in figure 3.93.

Figure 3.93: Add a graph set.


3.6 Visualisation of text output files
At the end of every time step, data of the those material points specified in the calculation data (see
Section 3.2.8) and stored in the CPS file under the flag $$OUTPUT_MATERIAL_POINTS is written in a set
of text files with PAR extension. Each of this text files contains information of a single material point, such
as the time step, load multipliers, coordinates, displacement, stresses, strain and liquid pressure, and it
can be opened with any text editor. The process is explained for the 3D case but can equivalently be
adopted for the 2D case. For the 3D case, three files appear in the project directory.
⋄ oedometer.000.PAR_3;
⋄ oedometer.000.PAR_54;
⋄ oedometer.000.PAR_235.
In order to process this data any editor can be used. For example, Figure 3.94 has been created using
Microsoft Excel. It shows the liquid pressure evolution of material point 54 (approximately in the middle
of the soil column). It can be seen that the results have some oscillations but their magnitude decreases
as the calculation proceeds. One reason for these oscillations is that Anura3D considers a fully dynamic
formulation and all inertial effects play an important role in the results. Another cause for oscillations is
due to the effect of material points crossing element boundaries.
Note: Before importing the PAR files in Excel, please make sure that the delimiter is set to a space " ".
80 Anura3D MPM Software, Tutorial Manual

Figure 3.94: Dissipation of liquid pressure at material point 54 (located at a height of 0.5276 m).
3.7 Variations
The variations proposed for the oedometer problem are listed below.
3.1 Examine the influence of homogeneous local damping, and compare the results with the case of
using 10% and 75% of local damping.
3.2 Solve a small deformation problem by decreasing the value of the external load to 10 kPa, and
compare the results with the analytical solution.
3.3 Examine the effects of using Bulk Viscosity to damp the highest frequencies of the elements and
smooth numerical socillations.
3.4 Examine the effects of using Absorbing Boundaries to reduce the reflections of the propagating
waves at the bottom boundary.
The changes can be adopted by either changing the input data using the GiD pre-processor or by manip-
ulating the input data directly in the input file (i.e. GOM and CPS file.) The CPS file oedometer.CPS_001
and GOM file oedometer.GOM can be found in the project directory oedometer.A3D in the directory,
which was specified earlier by the user (Section 3.2.1, step 5):
D:\..\oedometer.A3D\oedometer.CPS_001

D:\..\oedometer.A3D\oedometer.GOM

The CPS and GOM files can be opened and adapted in any text editor.
3.7.1 Variation: Effect of local damping
Engineering problems in which inertia plays an important role require a dynamic formulation. However,
some problems involve very slow processes for which a steady-state solution is of interest rather than
the dynamic analysis of wave propagation. In order to converge to the quasi-static equilibrium as fast
as possible, or to reduce numerical instabilities, Anura3D includes an additional local damping term in
the momentum balance equations that introduces energy dissipation in solid and liquid phases. More
information can be found in Chapter 6 of ? ] or in ? ? ].
Two additional calculations are proposed in order to investigate the effect of including local damping. To
do so, it is not required to repeat all steps from the beginning since only one calculation parameter has to
be changed. This variation can be for the 2D or the 3D case. Follow the steps described below.
Calculation with 10% local damping
3.1 Create a new folder in your user directory with a new appropriate name,
e.g. oedometer_var1_0.1.A3D:
One-dimensional consolidation (oedometric compression test) 81

D:\..\oedometer_var1_0.1.A3D>

3.2 Copy the CPS_001 file, the GOM file, the Anura3D executable and the DLL file from the original
project directory (\oedometer.A3D) to the new one.
3.3 The local damping coefficient is the calculation parameter that controls the amount of local damping
imposed to the system. It is defined in the CPS file. Open the CPS_001 file with any text editor.
Switch on the use of homogeneous local damping and modify the input local damping coefficient as
indicated below. Note that the first position indicates if the local damping is switch on (1) or off (0),
and the second position corresponds to the selected value of the local damping coefficient.

1 $$HOMOGENEOUS_LOCAL_DAMPING
2 1 0.1

3.4 Save the modified CPS file.


3.5 Repeat the steps as described previously in Section 3.3 to perform the calculation.
3.6 Inspect the results as described in Section 3.4.
Alternatively, open the previously generated project again in GiD. Save it with a new appropriate name,
e.g. oedometer_var1_0.1. Then, adjust the calculation data by choosing <Anura3D> <Calculation
Data> from the GiD menu. Modify the homogeneous local damping properties as shown in Figure 3.95.
Regenerate the Anura3D input files by choosing <Anura3D > <Generate Input Files> from the menu.
Perform the calculation in the new directory oedometer_var1_0.1.A3D and inspect the results.

Figure 3.95: Adjusting homogeneous local damping properties in GiD.

Calculation with 75% local damping


Follow the steps as described above while adjusting the value for the local damping coefficient to 0.75.
Create a new folder in your user directory with a new appropriate name,
e.g. oedometer_var1_0.75.A3D:

D:\..\oedometer_var1_0.75.A3D>

Alternatively, open the previously generated project again in GiD. Save it with a new appropriate name,
e.g. oedometer_var1_0.75, and change the respective local damping coefficient.
Results
Figure 3.96 shows the effect of including local damping. Note that a high value of local damping (e.g.
75%) reduces considerably the oscillations but the dissipation of water pressure occurs more slowly since
the system is excessively damped.
82 Anura3D MPM Software, Tutorial Manual

Figure 3.96: Dissipation of liquid pressure at material point 54 (located at a height of 0.5276m)
for different local damping coefficients.
3.7.2 Variation: Small deformation problem
The second variation of the oedometer problem is to decrease the external load that is applied on top of
the soil column to 10 kPa in order to solve a small deformation problem to be comparable to analytical
solutions. This variation can be for the 2D or the 3D case. Follow the steps described below.
3.1 Create a new folder in your user directory with a new appropriate name,
e.g. oedometer_var2_10.A3D.

D:\..\oedometer_var2_10.A3D>

3.2 Copy the CPS_001 file, the GOM file, the Anura3D executable and the DLL file from the original
project directory (\oedometer.A3D) to the new one.
3.3 Open the CPS_001 file with any text editor.
3.4 Decrease the applied load. The load defined previously during creating the geometry in GiD was set
to 400 kPa. In order to reach a load of 10 kPa the load multiplier has to be set to 0.025. Therefore:

1 $$SOLID_TRACTION
2 step 0.025 0.025

3.5 Save the CPS file.


3.6 Repeat the steps as described previously in Sections 3.3 to perform the calculation.
3.7 Inspect the results as described in Section 3.4.
The evolution of liquid pressures considering an external load of 10 kPa is presented in Figure 3.97.
One-dimensional consolidation (oedometric compression test) 83

(a) (b) (c) (d) (e) (f) (g) (g)

Figure 3.97: Evolution of liquid pressure for an external load of 10 kPa applied on top of the soil
column: (a) t = 0 s, (b) 0.05 s, (c) 0.1 s, (d) 0.2 s, (e) 0.5 s, (f) 1 s, (g) 2.0 s and (h)
0.2 s (3D).
3.8 Discussion
Some general remarks:
⋄ As in Anura3D a dynamic formulation is used that considers all inertial terms, dynamic effects have to
be considered when interpreting the results.
⋄ Including homogeneous local damping in the calculation reduces the energy of the system and the
solution is damped. Only small local damping coefficients, up to 5%, are recommended for dynamic
problems since higher values lead to energy loss of the system.
⋄ Gauss point integration is recommended especially when large deformations occur. This integration
method reduces internal instabilities that appear when material points cross element boundaries.
⋄ In large deformation problems, external loads have to be assembled in the material points in order to
move together with the deforming material.
84 Anura3D MPM Software, Tutorial Manual
4 Wave propagation
Authors: Alexander Chmelnizkij; Susmitha Ramachandran
This chapter will investigate the case of one-dimensional shock wave propagation through a dry and
saturated column. Different damping and boundary conditions will be presented, resulting in different
types of wave propagation solutions.
4.1 Problem definition
Consider a similar geometry as shown in Section 3.2.4 with reduced width of the column to a value of
0.001m.

Table 4.1: Dimensions of the column

dimension [m]
height H 1.0
width/depth d 0.001

First, the case of dry material is studied. The properties for the material are given in Table 4.2.

Table 4.2: Material parameters for the wave propagation problem.

material column
material type dry material
initial porosity [–] 0.4
density solid [kg/m3 ] 2650
K0-value [–] 0
material model solid Linear Elasticity
Young modulus [kPa] 10000
Poisson ratio [–] 0.0

4.2 Creating input data


The geometry, boundary conditions, material properties and mesh will be defined using the GiD pre-
pocessor. The calculation options will be defined in the CPS file. Both follows the same procedure as
previously described in Section 3.1. Here only the differences with respect to the previous examples will
be highlighted.
4.2.1 Starting pre-processor
Start the GiD pre-processor following the steps as described previously in Section 3.2.1. Save the project
in the desired directory on the hard disk with an appropriate name (e.g. "wave").
86 Anura3D MPM Software, Tutorial Manual

4.2.2 Defining geometry


First, a 3D analysis and single-point formulation are chosen for this example. The height of the column is
1 m, and the width and depth are 0.001 m. In the same way, as described in Section 3.2.2, the column’s
lines, surfaces, and volumes are defined. In the presented case, one material point per element is used.
The analogous case of a two-dimensional geometry is left as an exercise.

Figure 4.1: Geometry and material properties/specifications of the column.


Wave propagation 87

4.2.3 Defining boundary conditions


Define the boundary conditions following the steps as described previously in Section 3.2.6.
Applying fixities
Fixity boundary conditions are applied for the column’s sides and bottom. The sides located in the y-
z-plane are fixed in the x-direction. The sides located in the x-y-plane are fixed in the z-direction. The
bottom surface is fixed in the y-direction.

Figure 4.2: Fixity boundary conditions for the sides and bottom of the column.
88 Anura3D MPM Software, Tutorial Manual

4.2.4 Defining loading conditions


At the top of the column, a magnitude 1 [kPa] traction in the negative y-direction is applied to the surface.
The traction is applied uniformly on material points.

Figure 4.3: Loading conditions for the top of the column.


4.2.5 Creating mesh
A tetrahedral volume mesh is defined with an element size of 0.001m.

a) b) c)

Figure 4.4: Defining mesh properties for the wave propagation problem in GiD. a) Choose
strucutred mesh by size for lines b) Select all lines and set the element size to 0.001
m c) Check if the mesh was generated correctly
Wave propagation 89

4.3 Calculation data


In the calculation data, the number of calculation steps is set to 100 steps with a duration of 0.001 seconds.
Material point integration is used as the computational method. The traction is applied stepwise with an
initial and final magnitude of 1, corresponding to a suddenly applied traction, kept constant during the
simulation. Bulk viscosity is also used with a linear coefficient of 0.06 and a quadratic coefficient of 1.2.
The effect of these coefficients on the results will be investigated later.

Figure 4.5: Defining the calculation data.


4.4 Generating input data and performing calculation
To generate the calculation data and perform the simulations follow the steps described in Section 3.2.9.
90 Anura3D MPM Software, Tutorial Manual

4.5 Visualisation of results


The visualization of the results is done in ParaView. Therefore, a material point in the middle of the column
is chosen, and its vertical effective stress is considered.

Figure 4.6: Vertical efficite stresses of a material point in the middle of the column with bulk
viscosity.

As shown in Figure 4.6 the stress wave reaches the material point in the middle of the column after a while
and suddenly increases the stress to -1 [kPa]. A bit later, the magnitude is increased to a value of -2 [kPa].
The second increase shows the arrival of the reflected wave from the fixed bottom of the column. As the
top of the column is not subjected to fixities, the reflection turns a compressional wave into a tensile one,
so the stress drops at the considered material point.
4.6 Variations: Bulk viscosity
The effect of bulk viscosity on the results can be studied by changing flags in the CPS file. To simulate
the wave propagation without bulk viscosity, change the following entry of the CPS file,

1 $$BULK_VISCOSITY_DAMPING
2 1 0.06 1.2

to

1 $$BULK_VISCOSITY_DAMPING
2 0 0.06 1.2

The simulation results without bulk viscosity, as shown in Figure 4.7, oscillate stronger than the previous
calculation. In particular, the oscillations appear stronger near the stress discontinuities.
Wave propagation 91

Figure 4.7: Vertical efficite stresses of a material point in the middle of the column without bulk
viscosity.

A further increase of the bulk viscosity coefficients leads to over-smoothed results, as shown in Figure
4.8.

1 $$BULK_VISCOSITY_DAMPING
2 0 0.4 2

Figure 4.8: Vertical efficite stresses of a material point in the middle of the column with higher
bulk viscosity.
92 Anura3D MPM Software, Tutorial Manual

4.7 Variations: Absorbing Bounadries


To avoid reflection at the bottom of the column instead of fixities, absorbing boundaries can be defined at
the bottom. Therefore the assigned fixity needs to be unassigned, as shown in Figure 4.9.

Figure 4.9: Unassign fixity in y-direction at the bottom of the column.

The absorbing properties of the boundary need to be defined in every direction. In Figure 4.10 the
corresponding coefficients for the springs and dashpots are shown.
Wave propagation 93

Figure 4.10: Assign spring and dashpot properties to the bottom surface.

Run the simualtion for 50 instead of 100 calculation steps. This can be either modified in "Calculation
Data" shown in Figure 4.5 or directly in the CPS file.
94 Anura3D MPM Software, Tutorial Manual

Figure 4.11: Check if absorbing boundaries were correctly applied.

The simulation results show that the reflected wave is almost entirely absorbed by the boundary and a
constant stress level of approx. -1 [kPa] is reached quite fast.

Figure 4.12: Resulting vertical stresses in the middle of the column using absorbing boundaries.
Wave propagation 95

4.8 Variations: Coupled wave propagation


The wave propagation in saturated material is considered now. Two-dimensional elements are used now
to discretize the column. The three-dimensional case presented in the previous section could be used
here analogously. First, the material specifications and parameters are chosen, as shown in Figure 4.13.

Figure 4.13: Defining material specifications and properties for the coupled wave propagation.

As a saturated material is used in this analysis, boundary conditions for the solid and liquid phases are
needed. In contrast to the 3D case, the boundary conditions are now applied to lines instead of surfaces.
96 Anura3D MPM Software, Tutorial Manual

a) b)

Figure 4.14: Defining fixity boundary conditions for a) solid and b) liquid phases.

Analogous to the previous example, a traction of magnitude 1 [kPa] for the solid phase is introduced at
the top. The pressure of the liquid phase is zero at the top.
Wave propagation 97

Figure 4.15: Defining solid traction in negative y-direction.


4.8.0.0.1 Creating mesh
Triangular elements with an element size of 0.0001m are used to discretize the geometry. The mesh is
chosen to be structured along every line. The resulting mesh is shown in Figure 4.16.
98 Anura3D MPM Software, Tutorial Manual

Figure 4.16: Defining mesh properties for a structured trinagular mesh.


4.8.0.0.2 Calculation data
The parameters for the calculation are chosen according to Section 4.3 with a slight deviation. The
following flags are adjusted for the coupled analysis:

1 $$TIME_PER_LOADSTEP
2 0.0000002

1 $$BULK_VISCOSITY_DAMPING
2 1 0.42 1.2

1 $$OUTPUT_NUMBER_OF_MATERIAL_POINTS
2 1
3 $$OUTPUT_MATERIAL_POINTS
4 566
Wave propagation 99

4.8.0.0.3 Visualisation of results


The output for the material point selected with the ID 566 can be found in the calculation folder with the
file name ending PAR_566. Extracting the columns with the names SigmaYY and WPressure and plotting
them over time gives the following figure.

Figure 4.17: Resulting vertical stresses and pore pressure for material point 566 plotted over
time.
100 Anura3D MPM Software, Tutorial Manual
5 Triaxial compression test
Authors: Pietro Marveggio; Alexander Rohe; James Fern; Alba Yerro
The aim of this tutorial is to simulate a triaxial compression test by using the finite element (FE) package
of Anura3D . Besides the Material Point formulation, Anura3D includes two FE-based packages: the
Standard FEM and the Updated Lagrangian FEM. In the first formulation all the integrations are carried
out by considering the initial reference configuration at time t=0 (i.e. original volume and surface area),
while in the latter the current configuration at time ’t’ is used (i.e. the volume and surface are updated
accounting for body deformations). In this chapter, for the sake of simplicity, the Standard FEM approach
will be used to simulate a simple boundary value problem considering a homogeneous cubic specimen.
The following steps are required to complete the simulation.
⋄ Creation of geometry
⋄ Definition of material model
⋄ Loading and boundary conditions definitions
⋄ Generation of the mesh
⋄ Execution of calculation
⋄ Output of results
The simulation is performed considering one of the constitutive models included in Anura3D . The simu-
lations are run in drained conditions using the one-phase single-point formulation (see Chapter 2, Fern et
al. [? ]). In the second part of the chapter, the procedure required to run a simulation by adopting any
constitutive model implemented by the user is described (External soil model).
5.1 Problem definition
The triaxial compression test is carried out as strain-driven for which the top face of a soil cube is com-
pressed with a constant velocity of 0.01 m/s. The gravity is neglected as its contribution towards the
effective stress state is very small and, therefore, the dimensions of the cube do not influence the results;
a 1-m wide cube is used. Figure 5.1 describes the geometry of the problem. The boundary conditions
are such that the bottom surface is constrained in normal direction while the lateral surfaces have a com-
pressive load of 50 kPa in the normal direction. The first example uses the Mohr-Coulomb model with the
parameters listed in Table 5.1. The specimen is assumed to be isotropically consolidated and the initial
stress can be initialised using the k0 -procedure (Chapter 6, Fern et al. [? ]) with K0 = 1.0.
5.2 Creating input data
The geometry, material properties, fixities, number of material points, contact conditions, initial calculation
parameters, and mesh are defined with GiD as previously described in Section 3.2.
5.2.1 Starting pre-processor
Start the GiD pre-processor following the steps as in Section 3.2.1. Save the project in the desired
directory on the hard disk with a given name (e.g. "triaxial").

Figure 5.1: Schematic description of the triaxial compression simulation.


102 Anura3D MPM Software, Tutorial Manual

Table 5.1: Material parameters of the triaxial problem.

Parameter Symbol Unit Value


Material type: dry material
Initial porosity n0 [-] 0.3
Density solid ρs [kg/m3 ] 2,650
Material model solid: Mohr-Coulomb
Poisson ratio ν [-] 0.25
Young’s modulus E′ [kPa] 10,000
Cohesion c′ [kPa] 3
Friction angle φ′ [◦ ] 35
Dilatancy angle ψ [◦ ] 15

5.2.2 Defining geometry


Create the geometry as follows.
3.1 Define points and lines of one the faces of the model (Figure 5.2) using the point coordinates
indicated in Table 5.2.

Figure 5.2: Geometry of the front face of the model. Key points are indicated.

Table 5.2: Key point coordinates of front faces of the sliding blocks problem.

Point X coordinate [m] Y coordinate [m]


P1 0 0
P2 1 0
P3 1 1
P4 0 1

3.2 Generate the surfaces and create the volumes following the explanations in Chapter 3.2.2. Note that
the thickness of this model must be z = 1 m. The final geometry should be as shown in Figure 5.3.
Triaxial compression test 103

Figure 5.3: Geometry of the triaxial test problem.


5.2.3 Defining material properties
Before specifying material properties, ensure that the Anura3D problemtype has been set as described in
Section 3.2.1 step (2).
The triaxial model consists of a single material. Follow the instructions detailed in Section 3.2.4 to define
the material and assign it to the cubic volume. Material parameters are given in Table 5.1. Note that some
constitutive models (e.g. external-soil-model) need to be provided in as a dynamic-link library file (dll) in
the simulation folder as can be seen in Figure 5.4. Check if the assigned materials are correctly assigned

Figure 5.4: Material dialogue box in GiD.

as was shown in Chapter 3.


5.2.4 Specifying material points
Specify the material point distribution following instructions from Section 3.2.5. For this case, choose 1
material points per element for box. As a standard FE approach will be considered, this value simply
represents the number of integration points employed in the simulation. Check if the material points are
assigned correctly, as was shown in Chapter 3.
104 Anura3D MPM Software, Tutorial Manual

5.2.5 Defining initial conditions


As mentioned previously, the stresses are initialized by means of the K0 -procedure. To do this, the "Apply
K0 -procedure" option should be set on "Yes" and the initial vertical load has to be set to "-50.0 kPa". This
option is found in the Anura3D tree menu under the section "Initial conditions" → "Stress initialization" →
"Horizontal layered soil" (Figure 5.5).

Figure 5.5: Initial conditions to apply K0-procedure


5.2.6 Defining boundary conditions
Define the boundary conditions following the steps as described previously in Section 3.2.6.
Applying fixities
As the material is dry, only the solid phase needs to be considered. The solid displacement at the bottom
have to be fixed in direction normal to the surface. After the fixity definition, check if the condition is
assigned correctly.
Applying loading conditions
On the lateral surface of the box, a uniform distributed load of 50 kPa is applied inwards in normal direction
with respect to the surface. As the simulation will run according to the standard FE approach, the load are
applied on the nodes.
Before going on with the pre-processing phase, check if the applied load is assigned correctly.
Applying prescribed velocity
The triaxial simulation is strain driven. To do this, a vertical velocity of 0.001 m/s is applied downwards at
the top surface of the soil column. The following steps need to be done.
3.1 Choose <Prescribed Velocities> from the data-tree.
3.2 The "Prescribed velocities" tree appears. The prescribed velocity has to be applied on a surface.
As the velocity is applied on nodes, double click on the "Nodal Velocity" icon, as shown in Figure
5.6.
Triaxial compression test 105

Figure 5.6: Prescribed velocity conditions dialogue box in GiD. Assign the velocity to the surface
nodes

3.3 Enter the value of the downward vertical velocity of 0.001 m/s will be applied. Therefore, enter
"-0.001" in the field "y-direction [m/s]" as shown in Figure 5.6.
3.4 Click on the <Select> button in order to select the surface where the load should be assigned to as
shown in Figure 5.6.
3.5 Select the upper surface of the cube, which should be highlighted in red.
3.6 Press <ESC> OR click on <End> to leave the selection of surfaces.
3.7 Check if the prescribed velocity is assigned correctly. The prescribed velocity condition applied
should be as shown in Figure 5.7.

Figure 5.7: Checking prescribed velocity for the triaxial problem in GiD.

3.8 Click on <Finish> and <Close> to quit the assigning fixities process.
5.2.7 Creating mesh
A structured mesh is used for this example. As the problem considered is sufficiently simple, only a few
elements are used to run the simulation. To generate the mesh follow the steps detailed below. (Note that
3D tetrahedral elements have to be defined as quadratic type elements in GiD).
3.1 Choose <Mesh> <Generate Mesh> from the menu OR press <CTRL>+<G>.
106 Anura3D MPM Software, Tutorial Manual

3.2 The "Mesh generation" dialogue box appears. For this example, set the mean element size to "1"
as shown in Figure 5.8. This corresponds to the depth z of model.

Figure 5.8: Enter the size of elements equal to 1 m.

3.3 Click the <OK> button. The mesh will be generated and the progress is shown in the "Progress in
meshing" dialogue box as shown in Figure 5.9. The number of generated tetrahedral elements (12)
can be seen as well as the number of generated nodes (35).

Figure 5.9: Mesh generated dialogue box.

3.4 Click on the <View mesh> button to quit the meshing process and see the generated mesh. It
should look like Figure 5.10

Figure 5.10: Computational mesh of the triaxial test problem.


5.2.8 Initialization of calculation data
The calculation of the triaxial problem will be carried out in one stage.
Computation method
The computation method used is the standard finite element one. Therefore the option "Standard FEM"
should be selected.
Triaxial compression test 107

Calculation step data


The compression of the soil column will be analysed for 5 seconds. To create intermediate results, the
total time is divided into 50 load steps of 0.1 s each. A Courant number of 0.5 is suggested to ensure the
stability of the solution.
Gravity Load
In this example, the gravity is neglected. Therefore, the application of gravity option should be set on "do
not apply gravity load" (default value value).
External Load
The external load is applied suddenly on the lateral surface of the sample and is maintained constant
throughout the calculation. Therefore, set the solid traction box either to "apply solid traction - linear" or
"apply solid traction - stepwise", as both works in this case, since the multipliers for solid traction has to
be set to 1.0 (both initial and final value).
Prescribed velocity
As for the external load, also the prescribed velocity is applied suddenly on the top surface of the sample
and is maintained constant throughout the calculation. Again the solid traction box can be set either to
"apply prescribed velocity - linear" or "apply prescribed velocity - stepwise" and the multipliers to 1.0 (both
initial and final value).
Default values
All other calculation options are not used in this example and the provided default values can be kept, i.e.
regarding liquid pressure, contact algorithm, smoothing algorithms, quasi-static convergence, etc.
To define the initial calculation parameters, follow the instructions detailed in Section 3.2.8. For this
example, enter the values given below;
⋄ Select "COMPUTATION METHOD" as "Standard FEM" from the drop down menu
⋄ Set "number of calculation steps [-]" to "50"
⋄ Set "time per calculation step [s]" as "0.1".
⋄ Set "Courant number" to "0.5"
⋄ Set select "apply solid traction - stepwise" in the solid traction box and set the corresponding multipliers
to "1.0 1.0"
⋄ Select "apply prescribed velocity - stepwise" in the prescribed velocity box and set the corresponding
multipliers to "1.0 1.0"
All other calculation parameters can be kept at their default values.
108 Anura3D MPM Software, Tutorial Manual

5.2.9 Generating input files


After the geometry, material properties, boundary conditions, loading conditions and calculation param-
eters are defined and the mesh is generated, the input files for the Anura3D analysis (i.e. GOM and
CPS file) have to be created. To generate the GOM and CPS files, follow the steps as described in
Section 3.2.9.
The generated input files triaxial.GOM and triaxial.CPS_001 can be found in the new folder triaxial.A3D
in the directory, which was specified earlier by the user:

D:\..\triaxial.A3D\triaxial.GOM

D:\..\triaxial.A3D\triaxial.CPS_001

Notice that in the same folder the dynamic-link library files containing the constitutive models can be found.
Please note that every time a simulation is run, the "dll" associated with each constitutive model used in
the simulation is required. This is important when, for any reason, files are copied into a new folder.
5.3 Performing calculation in Anura3D
The Anura3D calculation can be started following instructions described in Section 3.3.
The calculation starts and output is generated in the "Command Line" window indicating the progress of
the calculation. Any possible input and calculation errors are displayed in this window as well. The output
files are generated and stored in the project directory D:\..\tri.A3D.
5.4 Visualisation of text output files
The VTK files can be opened with ParaView and the evolution of volumetric and deviatoric strains and
stresses in one point of the sample can be extracted and analysed. As the behaviour of the material inside
the box is intended to be homogeneous, any of the integration points can be used to extract information
required for the analysis. In this example, the average values over the sample is used. Following the
steps described in Section 3.4.8 without specifying any material point,the evolution of variables over time
can be obtained. These are included in the MPMScalar files. These data can then be processed in a
spreadsheet, e.g. MS Excel.
The result is a vertical compression stress that is linearly increasing until the yield surface is reached.
From that moment on, the vertical stress remains constant and only plastic deformation occurs (see Figure
5.11). The evolution of the volumetric strain is determined by the linear elastic parameters until when the
yield surface is reached. From that point on, the volumetric strain starts increasing due to the definition
of a non-zero dilatancy angle (see Figure 5.12). Figure 5.13 shows that the stress state evolves until
the yield function is reached, from that moment on the deviatoric stress remains constant with deviatoric
strain, while the volumetric strain rate increment changes sign according to the dilatancy of the material.

Figure 5.11: Triaxial test using Mohr-Coulomb: deviatoric stress with isotropic pressure
Triaxial compression test 109

Figure 5.12: Triaxial test using Mohr-Coulomb: volumetric strain with deviatoric strain

Figure 5.13: Triaxial test with Mohr-Coulomb: deviatoric stress vs deviatoric strain
5.5 External Soil Model
Anura3D has a feature to deal with external soil models (ESM), that are provided by the user. This facility
allows any user to make use of a wider range of constitutive soil models in Anura3D . The ESM is based
on the ABAQUS standard (implicit) for which the stiffness matrix DDSDDE is returned to Anura3D . The
ESM must be included in Anura3D executable. Although the user is free to modify the code, the procedure
here suggested consists in creating a specific module, to be included in specific files of the solution. Such
module should be programmed in FORTRAN (or another programming language), then compiled together
with the main executable. The user supplied material subroutine is required to update the integration point
effective stress and state variables, providing as well an estimation of the constrained modulus, that is
required to evaluate the maximum time step size to ensure stability of the analysis.
To include an external material, essentially three steps have to be followed:
⋄ Prepare the ESM module
⋄ Include the module into "ExternalSoilModel.for" and "ReadMaterialData.for"
⋄ Define the pointer to the ESM in "ReadMaterialData.for"
⋄ Compile the executable
⋄ Define user supplied material in GiD.
110 Anura3D MPM Software, Tutorial Manual

5.5.1 Preparation of the FORTRAN File


The A3D interface for external soil model is intended to work according to the ABAQUS User material
(UMAT) file standard. In fact the FORTRAN file will be composed by two main subroutines. One is the
actual ESM Anura3D interface, while the other is the UMAT.
External soil model functions are here written using FORTRAN, to be consistent with the ABAQUS stan-
dard. In order for the Anura3D solver to recognise the user subroutine, the name of the subroutine as well
as the data types of the arguments must exactly match those given below.
A general formulation of the ESM subroutine ("ESM_NONLINEAR" included in the module "ModNoNLin-
earElasticity") is here shown. Note that the name of the module you choose should be the one included
later in specific modules, while the name of the subroutine should correspond to the pointer that will be
later defined.

1 module ModNoNLinearElasticity
2 contains
3

4 Subroutine ESM_NONLINEAR(NPT,NOEL,IDSET,STRESS,EUNLOADING,PLASTICMULTIPLIER, &


5 DSTRAN,NSTATEV,STATEV,NADDVAR,ADDITIONALVAR,CMNAME,NPROPS,PROPS,NUMBEROFPHASES,NTENS)
6

8 implicit double precision (a−h, o−z)


9 integer :: NTENS, NSTATEV, NADDVAR, NPROPS, NPT, NOEL, IDSET, NUMBEROFPHASES
10 double precision :: EUNLOADING, PLASTICMULTIPLIER
11 CHARACTER*80 CMNAME
12 DIMENSION STRESS(NTENS), DSTRAN(NTENS),STATEV(NSTATEV),ADDITIONALVAR(NADDVAR),PROPS(NPROPS)
13

14

15 !−−−Local variables required in standard UMAT


16 integer :: IStep, TimeStep
17 double precision, dimension(:), allocatable :: ddsddt ! only for fully coupled thermal analysis: variation of stress increment d
18 double precision, dimension(:), allocatable :: drplde ! only for fully coupled thermal analysis: variation of volumetric heat ge
19 double precision, dimension(:), allocatable :: stran
20 double precision, dimension(:), allocatable :: time
21 double precision, dimension(:), allocatable :: predef
22 double precision, dimension(:), allocatable :: dpred
23 double precision, dimension(:), allocatable :: coords
24 double precision, dimension(:,:), allocatable :: ddsdde ! Jacobian matrix of the constitutive model (tangent stiffness matrix in
25 double precision, dimension(:,:), allocatable :: drot
26 double precision, dimension(:,:), allocatable :: dfgrd0
27 double precision, dimension(:,:), allocatable :: dfgrd1
28 double precision :: sse, spd, scd ! specific elastic strain energy, plastic dissipation, creep dissipation
29 double precision :: rpl ! only for fully coupled thermal analysis: volumetric heat generation
30 double precision :: drpldt ! only for fully coupled thermal analysis: variation of volumetric heat generation due to temperatur
31 double precision :: pnewdt, dtime, temp, dtemp, celent
32 double precision :: Value ! auxiliary variable holding any real valued number
33 double precision :: Porosity, WaterPressure, WaterPressure0, GasPressure, GasPressure0, DegreeSaturation
34

35

36 integer :: ndi, nshr, layer, kspt, kstep, kinc


37

38 !−−−Local variables defned by the user


39 ! e.g. integer :: var_local
40 !−−−User can define here additional variables
41

42 allocate( ddsddt(ntens), drplde(ntens), stran(ntens), time(2), predef(1), dpred(1), &


Triaxial compression test 111

43 coords(3), ddsdde(ntens,ntens), drot(3,3), dfgrd0(3,3), dfgrd1(3,3) )


44

45 !Initialization
46 Eunloading = 0.0
47 PlasticMultiplier = 0.0
48

49 !Rename additional variables


50 Porosity = AdditionalVar(1)
51 WaterPressure = AdditionalVar(2)
52 WaterPressure0 = AdditionalVar(3)
53 GasPressure = AdditionalVar(4)
54 GasPressure0 = AdditionalVar(5)
55 DegreeSaturation = AdditionalVar(6)
56 time(1) = AdditionalVar(7) !TotalRealTime
57 time(2) = AdditionalVar(8) !OverallTotalTime
58 dtime = AdditionalVar(9) !TimeIncrement
59 IStep = AdditionalVar(10)
60 TimeStep = AdditionalVar(11) !Note: Very first time and load step: Istep=1 and TimeStep=1
61 !Call the UMAT
62 call umat(stress, statev, ddsdde, sse, spd, scd, rpl, ddsddt, drplde, drpldt, stran, dstran, time, dtime, temp, &
63 dtemp, predef, dpred, cmname, ndi, nshr, ntens, nstatev, props, nprops, coords, drot, pnewdt, celent, dfgrd0, &
64 dfgrd1, noel, npt, layer, kspt, kstep, kinc)
65

66

67 !−−−Definition of Eunloading −> required to define the max time step


68 Eunloading = max(ddsdde(1,1),ddsdde(2,2),ddsdde(3,3))
69 !−−−Always define this value to run the simulation
70

71 ! PlasticMultiplier can be given as an output because plastic points can be plotted as a result
72

73

74

75

76 return
77

78 end subroutine ESM_NONLINEAR


79

80

81 SUBROUTINE UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD, &


82 RPL,DDSDDT,DRPLDE,DRPLDT, &
83 STRAN,DSTRAN,TIME,DTIME,TEMP,DTEMP,PREDEF,DPRED,CMNAME, &
84 NDI,NSHR,NTENS,NSTATEV,PROPS,NPROPS,COORDS,DROT,PNEWDT, &
85 CELENT,DFGRD0,DFGRD1,NOEL,NPT,LAYER,KSPT,KSTEP,KINC)
86

87 implicit double precision (a−h, o−z)


88 ! !DEC$ ATTRIBUTES DLLEXPORT, ALIAS:"UMAT" :: UMAT
89 ! INCLUDE ’ABA_PARAM.INC’
90 integer :: NTENS, NSTATEV, NPROPS
91 CHARACTER*80 CMNAME
92 DIMENSION STRESS(NTENS),STATEV(NSTATEV), &
93 DDSDDE(NTENS,NTENS),DDSDDT(NTENS),DRPLDE(NTENS), &
94 STRAN(NTENS),DSTRAN(NTENS),TIME(2),PREDEF(1),DPRED(1), &
95 PROPS(NPROPS),COORDS(3),DROT(3,3),DFGRD0(3,3),DFGRD1(3,3)
112 Anura3D MPM Software, Tutorial Manual

96

97

98 ! Arguments:
99 ! I/O Type
100 ! PROPS I R() : List with model parameters
101 ! DSTRAN I R() : Strain increment
102 ! DDSDDE O R(,) : Material stiffness matrix
103 ! STRESS I/O R() : stresses
104 ! STATEV I/O R() : state variables
105

106 !−−− Local variables


107 dimension dSig(NTENS), Sig(NTENS)
108

109 ! Contents of PROPS(3)


110 ! 1 : E Young Modulus
111 ! 2 : ENU Poisson’s ratio
112 ! 3 : PLIM
113

114 E = PROPS(1)
115 ENU = PROPS(2)
116 PLIM = PROPS(3)
117 one = 1.0d0
118 two = 2.0d0
119 PRESS = (STRESS(1) + STRESS(2) + STRESS(3))/3
120 EDEG = E/(1+PRESS/PLIM)
121 G = EDEG/two/(one+ENU)
122 ! calculate elastic stress increment (DSigE = elastic stiffness D * strain increment DEps)
123 FAC = two * G / ( one − two * ENU )
124 D1 = FAC * ( one − ENU )
125 D2 = FAC * ENU
126 DSTRANVOL = DSTRAN(1) + DSTRAN(2) + DSTRAN(3)
127 dSig(1) = (D1 − D2) * DSTRAN(1) + D2 * DSTRANVOL
128 dSig(2) = (D1 − D2) * DSTRAN(2) + D2 * DSTRANVOL
129 dSig(3) = (D1 − D2) * DSTRAN(3) + D2 * DSTRANVOL
130 dSig(4) = G * DSTRAN(4)
131 if (NTENS == 6) then
132 dSig(5) = G * DSTRAN(5)
133 dSig(6) = G * DSTRAN(6)
134 end if
135 ! elastic stress
136 Sig = STRESS + dSig
137

138 ! stress state parameters update


139 do i = 1, NTENS
140 STRESS(i) = Sig(i)
141 end do
142

143 DDSDDE = 0.0


144 DDSDDE(1:3,1:3) = D2
145 DDSDDE(1,1) = D1
146 DDSDDE(2,2) = D1
147 DDSDDE(3,3) = D1
148 DDSDDE(4,4) = G
Triaxial compression test 113

149 if (NTENS == 6) then


150 DDSDDE(5,5) = G
151 DDSDDE(6,6) = G
152 end if
153

154 return
155 end subroutine umat
156

157 end module ModNoNLinearElasticity


158

The descriptions of the arguments that are used to communicate between the Anura3D solver and the
External Soil Model subroutine are listed below:
⋄ NPT : global integration/material point number
⋄ NOEL: global element number
⋄ IDSET : ID of material parameter set
⋄ STRESS: Effective stress at previous step (Input). It must be updated in the subroutine (output)
⋄ EUNLOADING: Unloading constrained modulus, that is required to evaluate the maximum time step
size to ensure stability of the analysis.
⋄ PLASTICMULTIPLIER: Value that is stored and can be plotted as output to detect plastic region
⋄ DSTRAN: Strain increment at the point/integration point
⋄ NSTASEV : Number of state variables
⋄ STASEV : State variables
⋄ NADDVAR: Number of additional variables
⋄ ADDITIONALVAR: additional variables, detailed below
⋄ CMNAME: Name of the material constitutive model
⋄ NPRPOPS: Number of properties of the material
⋄ PRPOPS: Model parameters
⋄ NUMBEROFPHASES: Number of phases of the material point
⋄ NTENS: Dimension of the stress and strain array
This is the list of additional variables that the code provides to the user:
⋄ ADDITIONALVAR(1): Porosity
⋄ ADDITIONALVAR(2): Water pressure at the current step
⋄ ADDITIONALVAR(3): Water pressure at the previous step
⋄ ADDITIONALVAR(4): Gas pressure at the current step (not available in v2019.1)
⋄ ADDITIONALVAR(5): Gas pressure at the previous step (not available in v2019.1)
⋄ ADDITIONALVAR(6): Degree of saturation (not available in v2019.1)
⋄ ADDITIONALVAR(7): Total time of the current step
⋄ ADDITIONALVAR(8): Total time
⋄ ADDITIONALVAR(9): Time increment
⋄ ADDITIONALVAR(10): Total time step
⋄ ADDITIONALVAR(11): Time step of the current calculation step
After the call of the UMAT and the stress update, it is always important to define a finite value of the
unloading oedometric modulus EUnloading. For many constitutive models, its definition is not trivial,
so its value can be in general set equal to the maximum value among ddsdde(1,1), ddsdde(2,2) and
ddsdde(3,3), as it is suggested by the template. If this simplification becomes too inaccurate, in order to
ensure stability, the user should set a sufficiently low value of Courant number, that slows the analysis.
Concerning the UMAT structure, as this follows the ABAQUS standard, it will not be described here. An
example of non-linear elastic material is in any case included for the sake of completeness. In this example
the Young modulus increases with the increasing of the isotropic pressure at the integration point.
The file can be generated by means of a standard text editor and saved as namefile.f in order the compiler
114 Anura3D MPM Software, Tutorial Manual

to recognize the FORTRAN format. Add the file you created into the Visula Studio project
5.5.2 Include the Module into the code
To take advantage of an external material model, to run a simulation with Anura3D , the model previously
defined should be included in the model ModExternalSoilModel included in "ExternalSoilModel.for" and in
ModReadMaterialData included in "ReadMaterialData.for". For the sake of completeness, hereafter the
example of ModExternalSoilModel is provided:

1 module ModExternalSoilModel
2 !**********************************************************************
3 !
4 ! Function: Contains the routines related to calling user−defined soil models in external DLLs.
5 ! $Revision: 9064 $
6 ! $Date: 2021−02−20 10:27:53 +0100 (sab, 20 feb 2021) $
7 !
8 !**********************************************************************
9

10 use ModMPMData
11 use ModGlobalConstants
12 use ModReadCalculationData
13 use ModReadMaterialData
14 use ModMPMInit
15 use user32
16 use kernel32
17 use ModMeshInfo
18 use ModLinearElasticity
19 use ModMohrCoulomb
20 use ModBingham
21 use ModNonLinearElasticity !add your module here!

5.5.3 Definition of the pointer to the ESM in "ReadMaterialData.for"


The ModReadMaterialData included in "ReadMaterialData.for", should be modified when in the case
(ESM_EXTERNAL_SOIL_MODEL). To do this, search for "ESM_EXTERNAL_SOIL_MODEL" case and
add the line defining the pointer diraction in case your model is associated to the materials. Note that you
can have different material names pointing to different ESM:
if (MatParams(I)

1 case (ESM_EXTERNAL_SOIL_MODEL)
2

3 !if (MatParams(I)%MaterialName=="MyModel") MatParams(I)%ESM_POINTER => ESM_Mymodel !Example of the pointer


4 if (MatParams(I)%MaterialName=="MyModel") MatParams(I)%ESM_POINTER => ESM_NONLINEAR

Note that "MyModel" should match the name the user should put in GiD when the material is created.
5.5.4 Definition of the pointer to the ESM in "ReadMaterialData.for"
Compile the code as is described in Chapter 2.
Triaxial compression test 115

5.5.5 Definition of a External Soil Model in Gid


In order to use the ESM, the option External Soil Model has to be selected in the material dialogue box and
in which the parameters of the model parameters and initial state variables are specified (Figure 5.14).
Note that the name of the model ("MyModel" in our example) has to be properly defined in the specified
option box. Based on the ESM formulation (3D or 2D), the size of the stress tensor inside dll should be
specified. The dll name is there just for back compatibility. It is required anymore.

Figure 5.14: Definition of external soil model in GiD.

The last step of the procedure consists in copying the dll file into the folder that the processor creates
when generating Anura3D input files.
Results from the example of External Soil Model application
The same simulation as the previous example is run with this ESM. As the stiffness of the material changes
in the computation, the critical time step is decreases as shown in Figure 5.15.
116 Anura3D MPM Software, Tutorial Manual

Figure 5.15: Time step evolution during calculations.

The increase in stiffness can be detected even plotting the average mean pressure over the sample with
the average volumetric strain, as can be seen in (Figure 5.16).

Figure 5.16: Mean pressure agains volumetric strain. Increase of the material stiffness.
6 Sliding blocks
Authors: Alba Yerro; Alexander Chmelnizkij; Alexander Rohe; James Fern; John Murphy; Luis E. Zambrano-
Cruzatty
This tutorial demonstrates the use of the contact formulation with three blocks sliding on an inclined plane.
Different friction and adhesion parameters will be used illustrating their influence on the sliding blocks.
Finally, the kinematics of the blocks are compared with the analytical solution for an infinite slope problem.
6.1 Problem definition
Three blocks are initially located at different heights on an inclined plane. The plane is divided in two
different sections – the lower part and the upper part. The inclined plane ends in a horizontal plane. The
geometry and the dimensions of the problem are given in Figure 6.1 and Table 6.1. Large deformation
MPM models require defining empty spaces in which the material points are free to move in and these
spaces have to be defined in the model and meshed. The contact algorithm will be applied between
each sliding block and the plane. The contact formulation implemented in Anura3D allows the different
contact parameters along the contact surface. Hence, different friction angles and adhesion values will
be specified for each combination. All materials in this analysis are considered as linear elastic and in dry
conditions. The properties for the materials are given in Table 6.2.
The calculation will be carried out in two stages.
(1) initialisation of stresses by quasi-static gravity loading,
(2) sliding of blocks down the plane by switching on the contact formulation.

Figure 6.1: Problem definition for the sliding blocks problem.

6.2 Creating input data


The geometry, material properties, fixities, number of material points, contact properties, initial calculation
parameters, and mesh will be defined with GiD. This follows a similar procedure as previously described
in Section 3.2.
6.2.1 Starting pre-processor
Start the GiD pre-processor following the steps as described in Section 3.2.1. Save the project in the
desired directory on the hard disk with an appropriate name (e.g. "blocks").
118 Anura3D MPM Software, Tutorial Manual

Table 6.1: Dimensions of the sliding blocks problem.

dimension value
r 5m
e 0.5m
z 0.0m
h1 7m
h2 8.25m
h3 9.5m
h4 10m
x1 5m
x2 5m
x3 9m
y1 4m
b 1.118m
α 26.56◦

Table 6.2: Material parameters for the sliding blocks and the soil.

material block 1 block 2 block 3 plane


material type dry material dry material dry material dry material
initial porosity [–] 0.0 0.0 0.0 0.0
density solid [kg/m3 ] 2000 2000 2000 4000
K0-value [–] 0.0 (*) 0.0 (*) 0.0 (*) 0.0 (*)
material model solid Linear Elasticity Linear Elasticity Linear Elasticity Linear Elasticity
Poisson ratio [–] 0.33 0.33 0.33 0.33
Young modulus [kPa] 20000 20000 20000 40000
(*) not used

6.2.2 Defining geometry


Create the geometry considering the dimensions given in Table 6.1 and follow the steps described below.
3.1 Define points and lines of one the faces of the model (Figure 6.2) using the point coordinates
indicated in Table 6.3.
Sliding blocks 119

Figure 6.2: Geometry of the front face of the model. Key points are indicated.

Table 6.3: Key point coordinates of front faces of the sliding blocks problem.

Point X coordinate [m] Y coordinate [m]


P1 -5 2.5
P2 0 0
P3 5 0
P4 5 -0.5
P5 0 -0.5
P6 -5 2
P7 -20 9.5
P8 -20 10
P9 -19.5 9.75
P10 -18.5 9.25
P11 -17 8.5
P12 -16 8
P13 -14.5 7.25
P14 -13.5 6.75
P15 -13 7.75
P16 -14 8.25
P17 -15.5 9
P18 -16.5 9.5
P19 -18 10.25
P20 -19 10.75
P21 -20 14
P22 0 4
P23 5 4
120 Anura3D MPM Software, Tutorial Manual

3.2 Smooth the sharp kink at the toe of the slope (Figure 6.3) by creating an arc tangent to two lines.
Choose <Geometry> <Create> <Arc> <Fillet curves> as presented in Figure 6.4 to create an arc
tangent to two lines.

Figure 6.3: Sharp kink at the toe of the slope.

Figure 6.4: Dialog box to create an arc the with the "Fillet curves" option.

3.3 Write the radius of the arc r indicated in Table 6.1 in the command line (Figure 6.5) and press
<ENTER>.

Figure 6.5: Enter radius of the arc r.

3.4 Select the first tangent line (Figure 6.6) and press <ENTER>. Select the second tangent line and
press <ENTER> (Figure 6.7). The sharp kink has been replaced by an arc as indicated in Figure 6.8.
Sliding blocks 121

Figure 6.6: Select first tangent line of the arc.

Figure 6.7: Select second tangent line of the arc.


122 Anura3D MPM Software, Tutorial Manual

Figure 6.8: Rounded kink at the toe of the slope.

3.5 Create surfaces following the explanations in Chapter 3.2.2. The final geometry should look like
shown in Figure 6.9.

Figure 6.9: Geometry of the sliding blocks problem.


Sliding blocks 123

6.2.3 Defining material properties


Before specifying material properties, ensure that the Anura3D problemtype has been set as described in
Section 3.2.1. Select in "Units and dimensions" -> "Units", "2D:plane-strain" as problem dimension and
"Single_point" for MPM discretization.
The sliding blocks model consists of four different materials – one for each block ("block1", "block2", and
"block3") and another one for the material conforming the slope ("plane"). Follow the instructions detailed
in Section 3.2.4 to define each material and assign it to the respective surface(s). Material parameters
are detailed in Table 6.2. Finally, check the assigned materials to be as shown in Figure 6.10.

Figure 6.10: Materials of the sliding blocks problem.


6.2.4 Specifying material points
Specify the initial material point distribution following instructions from Section 3.2.5. For this case, choose
3 material points per element for the plane and each of the blocks. Check if the material points are
assigned correctly (Figure 6.11).
124 Anura3D MPM Software, Tutorial Manual

Figure 6.11: Specification of the number of material points per element in the sliding blocks
problem.
6.2.5 Defining boundary conditions
Define the boundary conditions following the steps as described previously in Section 3.2.6.
Applying fixities
As the material is dry, only the solid phase needs to be considered. The solid displacement at the bound-
aries will be fixed as follows.
3.1 Left side: horizontal fixity in x-direction on both lines
3.2 Right side: horizontal fixity in x-direction on both lines
3.3 Top side: vertical fixity in y-direction on both lines
3.4 Bottom side: full fixities in x- and y-direction on all three lines
3.5 Check if the x- and y- fixities are assigned correctly (Figure 6.12)
Sliding blocks 125

Figure 6.12: Solid fixities of the sliding blocks problem in GiD.


6.2.6 Defining contact properties
The contact formulation implemented in Anura3D allows the definition of different contact properties (fric-
tion angle and adhesion) for each sliding material. These properties can also change in each segment
of the contact surface. For this exercise, there are three different sliding materials (block 1, block 2, and
block 3) and two sections in the base plane (the upper part and the lower part).

Table 6.4: Contact parameters between the sliding blocks and each surface of the base plane.

base plane
upper part lower part
block 1 friction 0.3 0.45
adhesion [kPa] 0.0 0.0
block 2 friction 0.325 0.45
adhesion [kPa] 0.0 0.0
block 3 friction 0.35 0.45
adhesion [kPa] 0.0 0.0

Follow the instructions as detailed below to assign the contact properties between blocks and base plane.
3.1 Choose <Contact Properties> from the menu as shown in Figure 6.13.
126 Anura3D MPM Software, Tutorial Manual

Figure 6.13: Select <Contact Properties>.

3.2 Select the "number of materials" as "3" since there are three sliding blocks as shown in Figure 6.13.
3.3 Name the contact Materials "MATERIAL 1" etc. according to the the three blocks. The name must
be exactly the same name of the material defined in Section 6.2.3. Otherwise, the contact will not
be properly assigned. Define the friction and adhesion between each block and the upper part of
the slope filling the spaces below each material name.
The contact properties are specified in Table 6.4. Note that the term included in "MATERIAL" must
be exactly the same name of the material defined in Section 6.2.3. Otherwise, the contact will not
be properly assigned.

Figure 6.14: Select "Number of materials".

3.4 Click on the button <Select> and select the surface corresponding to the upper part of the slope as
shown in Figure 6.15.
Sliding blocks 127

Figure 6.15: Assign contact properties between each block and the upper part of the slope.

3.5 Press <OK> to save the contact properties for the upper part of the slope.
3.6 Define the friction and adhesion between each block and the lower part of the slope by rewriting the
contact properties as shown in Figure 6.16 and according to the values specified in Table 6.4.

Figure 6.16: Definition of the contact properties between each sliding block and the lower part
of the slope.

3.7 Click on the button <Assign> and select the lower surface of the soil layer. The selected surface
should turn red.
3.8 Press <Esc> and click on <Finish> to save the contact properties for the lower part of the slope.
3.9 Click on <Draw> and select <Colours> in the box to check if the contact properties are properly
assigned. It should look like Figure 6.16.
128 Anura3D MPM Software, Tutorial Manual

6.2.7 Creating mesh


It is possible to generate meshes in many different ways in GiD. A unstructured mesh is used for this
example. To generate the mesh follow the steps detailed below.
3.1 Choose <Mesh> <Generate mesh...> from the menu as shown in Figure 6.17.

Figure 6.17: Select <Mesh> <Generate mesh...>.

3.2 Enter the value "0.3" in the new dialogue box to indicate the mesh size for the lines as shown in
Figure 6.18.

Figure 6.18: Enter the number of divisions and assign it to semi-structured volumes.

3.3 Click the <OK> button. The mesh will be generated and the progress is shown in the "Progress
Sliding blocks 129

in meshing" dialogue box as shown in Figure 6.19. The number of generated tetrahedral elements
can be seen as well as the number of generated nodes.

Figure 6.19: Mesh generated dialogue box.

3.4 Click on the <View mesh> button to quit the meshing process and see the generated mesh. It
should look like Figure 6.20

Figure 6.20: Computational mesh of the sliding blocks problem.


6.2.8 Initialisation of calculation data
As mentioned in Section 6.1, the calculation of the sliding blocks problem will be carried out in two stages
– (1) initialisation of stresses, and (2) sliding of the blocks down the plane. Only the calculation parameters
need to be defined in "Calculation Data".
Computation method
The computation method used is the Gauss point integration. Therefore the option "MPM - mixed integra-
tion" should be selected.
130 Anura3D MPM Software, Tutorial Manual

Calculation step data


The duration of the initial stage of the calculation corresponding to the stresses initialisation will be auto-
matically determined. The value for the time per calculation step is, therefore, not needed in this case. A
Courant number of 0.9 is recommended to ensure stability of the solution.
Gravity load
Select "apply gravity load-stepwise" Initial stresses are zero by default and need to be initialised. In
this example, the gravity is applied suddenly but the model will be heavily damped. Therefore, set the
multipliers for gravity loading as 1.0 (initial and final value). This is maintained constant throughout the
calculation. In this example, there is no additional external load. Therefore, the multipliers for external
load can be kept at default values.
Quasi-static convergence
The determination of the end of the gravity loading is determined by convergence criteria, which corre-
sponds to a quasi-static equilibrium condition. The convergence criteria are the tolerated error of the
out-of-balance force, the tolerated error of the kinetic energy or the maximum number of time steps.
Homogeneous local damping
In order to converge to the quasi-static solution, an overall local damping coefficient for all active elements
of 0.75 is applied during the first stage of the calculation.
Contact
Sliding of the blocks is not allowed during the stresses initialisation. Therefore, contact formulation is not
yet required during the first stage of the calculation hence this input must be kept as "no contact" (default).
Default values
All other calculation options are not used in this example and the provided default values can be kept, i.e.
gravity data, contact algorithm, smoothing algorithms, quasi-static convergence, etc.
To define the initial calculation parameters, follow the instructions detailed in Section 3.2.8. For this
example, enter the values given below as shown in Figure 6.21.
⋄ select "COMPUTATION METHOD" as "MPM - mixed integration" from the drop down menu
⋄ set "number of calculation steps [-]" to "1"
⋄ set "time per calculation step [s]" as "1.0". Note that any value except 0.0 can be entered as the
quasi-static convergence criterion is used.
⋄ set "Courant number" to "0.9"
⋄ set "gravity (initial, final) [-]" to "1.0 1.0"
⋄ set "QUASI-STATIC CONVERGENCE" as "apply convergence criteria" from the drop down menu
⋄ set "HOMOGENEOUS LOCAL DAMPING" as "apply homogeneous local damping" from the drop
down menu
⋄ set "local damping coefficient [-]" to "0.75"
All other calculation parameters can be kept at their default values. It is important to note that during stage
1 the "CONTACT" is set to "no contact" (default option).
Sliding blocks 131

Figure 6.21: Dialogue box to define calculation parameters in GiD for the sliding blocks problem.
6.2.9 Generating input files
After the geometry, material properties, boundary conditions, loading conditions and calculation parame-
ters are defined and the mesh is generated the input files for the Anura3D analysis (i.e. GOM and CPS
file) have to be created. To generate the GOM and CPS file follow the steps as described in Section
3.2.9.
The generated input files blocks.GOM and blocks.CPS_001 can be found in the new folder blocks.A3D
in the directory, which was specified earlier by the user (Section 6.2.1):
D:\..\blocks.A3D\blocks.GOM
132 Anura3D MPM Software, Tutorial Manual

D:\..\blocks.A3D\blocks.CPS_001

6.3 Performing calculation in Anura3D


The calculation will be carried out in two stages as follow.
1) initialisation of stresses by quasi-static gravity loading,
2) sliding of blocks down the plane by switching on the contact formulation.
6.3.1 Stage 1: Initialisation of stresses
A new folder has been generated in the directory, which was specified earlier by the user (Section 6.2.1),
i.e. blocks.A3D:
D:\..\blocks.A3D

This folder should contain five files which are necessary to initiate an Anura3D calculation, i.e:
D:\..\blocks.A3D\blocks.GOM

D:\..\blocks.A3D\blocks.CPS_001

D:\..\blocks.A3D\calculate.bat

D:\..\blocks.A3D\Anura3D_2024.exe

D:\..\blocks.A3D\zlib.dll

The Anura3D calculation can be started following instructions described in Section 3.3.
Stage 1 of the calculation starts and output is generated in the "Command Line" window indicating the
progress of the calculation. Any possible input and calculation errors are displayed in this window as well.
The output files are generated and stored in the project directory D:\..\blocks.A3D.
The calculation of stage 1 should be finished in a few seconds depending on the performance of your PC.
6.3.2 Stage 2: Sliding blocks
After the calculation of the stage 1 is finished, continue with defining the calculation parameters for stage
2 in the last CPS file generated during the first stage. Therefore, open the CPS file with extension
"_002":
D:\..\blocks.A3D\blocks.CPS_002

In the second stage, 70 additional load steps will be calculated. The time per load step is set as 0.1
seconds to be able to follow (and visualise) the sliding of the blocks in small steps. Therefore set:
1 $$NUMBER_OF_LOADSTEPS
2 71

1 $$TIME_PER_LOADSTEP
2 0.1

Verify that the gravity is kept at full level, and therefore the gravity multipliers are equal to:
1 $$GRAVITY_LOAD
2 step 1.0 1.0

Switch off the convergence to the quasi-static equilibrium as the full dynamic behaviour will be analysed,
therefore:
1 $$QUASISTATIC_CONVERGENCE
2 0
Sliding blocks 133

For the same reason, reduce the local damping coefficient to 1% and set:

1 $$HOMOGENEOUS_LOCAL_DAMPING
2 1 0.01

Switch on the contact formulation to allow sliding between blocks and base according to the contact
parameters defined in Section 6.2.6. Therefore, set:

1 $$CONTACT_FORMULATION
2 1

All other calculation options are not used in this example and the provided default values can be kept in
the CPS file.
Continue the calculation in the same project directory following instructions described in Section 3.3. The
CPS file with the highest step number will automatically be chosen for calculation (i.e. block.CPS_002).
The next 70 load steps will be calculated and the progress can be followed in the command line window.
The calculation of stage 2 should be finished in about three minutes depending on the performance of
your PC.
6.4 Visualisation of results in ParaView
Following the steps described in Section 3.4, the three material points, as shown in Figure 6.22, will be
examined.

Figure 6.22: Location of material points 208, 418 and 628.

The output in ParaView can be exported to different types of files. To compare the numerical results of the
sliding block problem with analytical solutions for an infinite slope the results are saved as .csv files. This
can be done by choosing <File> <Save Data...> from the main menu. The output file can be generated
either for one specific or for all load steps (Figure 6.23).
134 Anura3D MPM Software, Tutorial Manual

Figure 6.23: Options for saving output files in ParaView.

These files can be imported for example in Matlab or MS Excel. The analytical solution for the horizontal
displacement of a sliding block on an infinite slope with an inclination α and a friction coefficient µ is
 
sx = 0.5 · g · sin(α) – µ · cos(α) · cos(α) · t2 (6.1)

where g denotes the gravity.


6.5 Variations
The variations proposed for the sliding blocks problem are listed below.
3.1 Examine the influence of different values of friction angle and adhesion in the sliding kinematics of
the blocks.
3.2 Examine the behaviour of the blocks depending on their Young’s moduli.
3.3 Use different material constitutive models for the blocks (i.e. Mohr-Coulomb).
3.4 Explore the behaviour of the blocks depending on the curvature at the kink, by changing the radius
of the arc.
To perform each variation, you can copy the original project, and save it using another name (e.g.
blocks_var1.A3D, blocks_var2.A3D, ...). Then, change the corresponding contact properties, ma-
terial properties or geometry in GiD following instructions from Section 6.2, and repeat the calculation
process in two stages described in Section 6.3.
Furthermore the presented 2D problem can be expanded to a 3D calculation using the "3D-Body contact"
and defining all conditions on surfaces and volumes instead an lines and surfaces. In Figure 6.23 the 3D
version of the presented problem, with a depth of 0.5 m, is shown.
Sliding blocks 135

Figure 6.24: Three-dimensional variation of the sliding blocks problem.


6.6 Discussion
Note that the contact formulation implemented in Anura3D considers rigid contact surfaces. This means
that to use the contact formulation in a proper manner, you should be able to distinguish two types of mate-
rial in your problem: the "base" material (which should not deform), and the "sliding" material or materials
(which slide on top of the "base"). With this configuration, potential contact surfaces are determined at
the very beginning of the calculation. The contact surface geometry is not updated during the calculation,
hence the computation time is optimised.
136 Anura3D MPM Software, Tutorial Manual
7 Column collapse
Authors: Alba Yerro; Alexander Rohe; James Fern; Amine Aboufirass; Marc Stapelfeldt; Gaia Di Carluccio;
John Murphy; Pietro Marveggio; Veronica Girardi
This tutorial explains how to simulate the collapse of a granular column. The granular column collapse is
a well-established experiment which consists in releasing a column of sand on a flat surface and looking
at the liquid-like flow and final deposition profile.
The current version of Anura3D provides two-dimensional plane strain and axisymmetric as well as three-
dimensional analyses. This exercise contains a two-dimensional example, which can be modified for ax-
isymmetric or three dimensional calculations. In addition, several alternatives of the problem are proposed
such as different size of column, different materials (e. g. dry or saturated soil) and different boundary con-
ditions.
7.1 Problem definition
The dimensions of the problem are given in Figure 7.1. Note that the area into which the material is
supposed to flow has to be included in the mesh discretisation to allow material points to move freely. A
base layer is included for basal friction. The dimensions are given in Table 7.1.
The first analysis consists of a one-phase calculation. Therefore, both the column and base will be
modelled as dry materials. The material properties are given in Table 7.2.
The calculation will be performed in two stages:
1) stress initialisation with quasi-static gravity loading
2) failure of the column by removal of column fixities

Figure 7.1: Problem definition for the case 2D of a collapsing column including base layer.
138 Anura3D MPM Software, Tutorial Manual

Table 7.1: Dimensions of the collapsing column.

column height column width depth box height box width base layer
ratio
H [m] W [m] D [m] B [m] L [m] S [m]
2:1 2.0 1.0 0.1 2.1 10.0 0.2

Table 7.2: Material parameters of the collapsing column.

material column base


material type dry material dry material
initial porosity [–] 0.4 0.4
solid density [kg/m3 ] 2650 2650
K0 -value [–] 0.0 (*) 0.0 (*)
material model solid Mohr-Coulomb Linear Elasticity
Young’s modulus [kPa] 10000 10000
Poisson ratio [–] 0.3 0.3
cohesion [kPa] 0 -
friction angle [◦ ] 20 -
dilatancy angle [◦ ] 0 -
tensile strength [kPa] 0 -
*not used

7.2 Creating input data in GiD


The geometry, boundary conditions, material properties, and mesh are defined using the GiD pre-processor.
The calculation options will be defined in the CPS file. Both follow the same procedure as previous ex-
amples. Note that this geometry is defined in 2D as the case described in Section 3.2.
7.2.1 Starting pre-processor and selecting problemtype
Start the GiD pre-processor following the steps as described previously in Section 3.2.1. Save the project
in the desired directory on the hard disk with an appropriate name (e. g. "ColumnCollapse") as shown in
Figure 7.2.

Figure 7.2: Projectname of the project "columncollapse" in GiD.


7.2.2 Defining geometry
Create the geometry by following the steps as described in Section 3.2.2. The dimensions of the problem
are given in Table 7.1. Unlike for Lagrangian FEM models, MPM models require the definition of empty
volumes in which the material points can move into. One should think of the possible large deformed
configuration of the material when defining the model geometry.
In this example, a two-dimensional column with an initial aspect ratio of 2 ( = height/base ) will be cre-
ated by creating 6 rectangles as shown in Figure 7.3. A structured mesh will be utilised. The origin of
Column collapse 139

coordinates will be the bottom left of the soil column (point P4 in Figure 7.3).

Figure 7.3: Geometry of the two-dimensional column collapse problem for ratio 2:1 including
empty entities on the right and top side of the column.
7.2.3 Defining material properties
Define the material properties as described previously in Section 3.2.4. The first example is for a column
of dry soil. Two materials are defined – one for the base layer and one for the column. The base layer
is linear elastic and the column has an elastic-plastic Mohr-Coulomb model. The model parameters are
given in Table 7.2 and shown in Figure 7.4.

Figure 7.4: Defining material properties for the column collapse problem in GiD.
140 Anura3D MPM Software, Tutorial Manual

7.2.4 Specifying material points


Specify the initial material point distribution following instructions from Section 3.2.5. Choose 3 material
points per element for the column and base. Check if the material and the number of material points are
assigned correctly (Figure 7.5).

Figure 7.5: Specification of the material and number of material points per element in the column
collapse problem.
7.2.5 Defining boundary conditions
Define the boundary conditions following the steps detailed below.
Applying fixities
Apply the fixities for the column collapse problem following the steps described previously in Section 3.2.6.
Because this first example is a one-phase calculation, the boundary conditions are applied only on lines
for solid phase.
3.1 Left side at x = 0.0: horizontal fixity in x-direction on all three lines
3.2 Right side at x = 10.0: horizontal fixity in x-direction on all three lines
3.3 Right side of column at x = 1.0: horizontal fixity in x-direction on the middle surface
3.4 Top side at y = 2.1: vertical fixity in y-direction on both lines
3.5 Bottom side at y = -0.2: full fixities in x-, y-direction on both lines
3.6 Check if the fixities are assigned correctly (Figure 7.6)
Note that at the top boundary of the column itself no fixities are applied. The assigned solid fixities of the
column collapse problem should look like shown in Figure 7.6.
Column collapse 141

Figure 7.6: Fixities of the two-dimensional column collapse problem in GiD.

Removing fixities
At the right side of the column, the applied horizontal fixities in x-direction have to be removed to allow the
column to collapse. The following steps should be taken in order to remove fixities.
3.1 Right click on <Remove Solid Fixities> from the menu as shown in Figure 7.7 and select "‘Apply to
entities"’.

Figure 7.7: Add remove fixities in GiD.

3.2 The "Remove Fixities" dialogue box appears. In this example, fixities have to be removed on lines.
Select the line icon at the bottom of the window as shown in Figure 7.8 (left). Select the "x-direction".
Click on "Select" and select the line at the right side of the column by clicking with the cursor on
them. After selection the line should turn red as shown in Figure 7.8 (right).
142 Anura3D MPM Software, Tutorial Manual

Figure 7.8: Removing fixities dialogue box in GiD (left) and application of the condition (right).
Column collapse 143

3.3 Click <OK> in the "Remove Fixities" dialogue box to leave the selection of lines.
7.2.6 Creating mesh
A structured mesh will be used with an element size of 0.1m in each coordinate direction. The surfaces
have to be selected in which the structured mesh should be created. Afterwards, the mesh size has to be
assigned to the bounding lines by specifying the element length in each direction.
Double check that the quadratic type is <normal> in the menu <Mesh> <Quadratic type> as shown in
Figure 7.9.

Figure 7.9: Definition of the quadratic type in GiD.

Choose the element type to be <Triangle> in the menu <Mesh> <Element type> as shown in Figure 7.10
and select all the surfaces to assign triangular elements.

Figure 7.10: Definition of the quadratic type in GiD.

The properties of the structured mesh are defined by selecting <Mesh> <Structured> <Surfaces> <Assign
size to surface lines> from the menu as shown in Figure 7.11.
144 Anura3D MPM Software, Tutorial Manual

Figure 7.11: Definition of structured mesh properties in GiD.

With the appearing cursor, select all surface entities of the geometry. Each surface selected should turn
red. When all surfaces are selected, press <ESC> to leave. In the appearing dialogue box, enter the
element size that should be assigned to all lines, i. e. 0.1. Click on the button <Assign> and select all line
entities bounding the volume entities with the appearing cursor. Each selected line should turn red, as
shown in Figure 7.12.

Figure 7.12: Assigning element size to entities.

When all lines are selected, press <ESC> to leave. In the appearing dialogue box, click on the button
<Close> to finish the definition of structured element size.
Continue the generation of the mesh as described in Section 3.2.7. The structured mesh with element
size of 0.1m should look like shown in Figure 7.13.

Figure 7.13: Mesh in GiD for the case of a column with ratio 2:1 including empty entities.
Column collapse 145

7.2.7 Initialisation of calculation data


As mentioned in Section 7.1, the calculation of the column collapse problem will be carried out in two
stages: (1) initialisation of stresses by quasi-static gravity loading, and (2) failure of the column by removal
of column fixities.
Computation method
The computation method used in this example is the Gauss point integration. Therefore, the option "MPM
- mixed integration" should be selected.
Calculation step data
The initial stage of the calculation corresponding to the stresses initialisation will be performed in two
calculation steps. The end of each calculation step will be determined by the convergence criteria, see
below in the "Quasi-static convergence". A Courant number of 0.98 is recommended for the stability of
the solution.
Load multipliers
The default initial stresses are zero. Then, the gravity is applied in two steps. Set the multipliers for gravity
loading as 0.0 (initial) and 1.0 (final value).
Quasi-static convergence
The end time of the gravity loading is achieved when a quasi-static equilibrium condition is reached. The
convergence criteria are the tolerated error of the out-of-balance force, the tolerated error of the kinetic
energy, or the maximum number of time steps as specified below in the CPS file.
Homogeneous local damping
A local damping coefficient for all active elements of 0.75 is applied during gravity loading.
Strain smoothing
The strain smoothing algorithm will be used to minimise kinematic locking, which might occur for volumet-
ric strains.
Define the initial calculation parameters by following the instructions referred in Section 3.2.8. Enter the
values given below.
⋄ select "COMPUTATION METHOD" as "MPM - mixed integration"
⋄ set "number of calculation steps [-]" to "2"
⋄ set "time per calculation step [s]" as "1.0". Note that any value except 0.0 can be entered as the
quasi-static convergence criterion is used.
⋄ set "Courant number" to "0.98"
⋄ select "apply gravity load - stepwise"
⋄ check that "LOAD MULTIPLIERS" for "gravity" are set to "0.0 1.0"
⋄ check that "loading type" is set as "change load multiplier per calculation step"
⋄ select "QUASI-STATIC CONVERGENCE" as "apply convergence criteria"
⋄ set "HOMOGENEOUS LOCAL DAMPING" as "apply homogeneous local damping" from the drop
down menu
⋄ set "local damping coefficient [-]" to "0.75"
⋄ select "STRAIN SMOOTHING" as "apply smoothing"
The other calculation parameters can be kept at their default values. Double check that the parameters
are set in accordance to Figure 7.14.
146 Anura3D MPM Software, Tutorial Manual

Figure 7.14: Dialogue box to define calculation parameters in GiD.


7.2.8 Generating input files GOM and CPS
After the geometry, material properties, boundary conditions, removing fixities, and calculation parameters
are defined and the mesh is generated the input files for the Anura3D analysis, i.e. GOM and CPS file,
have to be created. To generate the GOM and CPS file, follow steps referred in Section 3.2.9.
The generated input files ColumnCollapse.GOM and ColumnCollapse.CPS_001 can be found in the
new folder columncollapse.A3D, in the directory which was specified earlier by the user (Section 7.2.1).

D:\..\ColumnCollapse.A3D\ColumnCollapse.GOM

D:\..\Columncollapse.A3D\Columncollapse.CPS_001

7.3 Performing calculation in Anura3D


The calculation will be performed in two stages as follows.
1) Initialisation of stresses by quasi-static gravity loading.
2) Failure of the column by removal of column fixities.
7.3.1 Stage 1: Initialisation of stresses
A new folder has been generated in the directory which was specified earlier by the user (Section 7.2.1),
i.e. columncollapse.A3D:

D:\..\ColumnCollapse.A3D

This folder should contain five files which are necessary to initiate an Anura3D calculation, i.e:

D:\..\ColumnCollapse.A3D\ColumnCollapse.GOM

D:\..\ColumnCollapse.A3D\ColumnCollapse.CPS_001

D:\..\ColumnCollapse.A3D\ColumnCollapse.bat

D:\..\ColumnCollapse.A3D\Anura3D_2022.exe
Column collapse 147

D:\..\ColumnCollapse.A3D\zlib.dll

The Anura3D calculation can be started instructions described in Section 3.3. Stage 1 of the calculation
starts and output is generated in the "Command Line" window indicating the progress of the calcula-
tion. Any possible input and calculation errors are displayed in this window as well. The output files are
generated and stored in the project directory D:\..\ColumnCollapse.A3D.
The calculation of the gravity loading should be finished in approximately 30 seconds depending on the
performance of your PC.
7.3.2 Stage 2: Calculation of column failure
After the calculation of the first phase has finished, continue defining the calculation parameters for the
second stage.
1) Initialisation of stresses by quasi-static gravity loading.
2) Failure of the column by removal of column fixities.
For the second loading stage, the last CPS file that was generated during the first phase has to be
adapted. Therefore, open the CPS file with extension "_003":

D:\..\ColumnCollapse.A3D\ColumnCollapse.CPS_003

In the second phase 50 additional load steps will be calculated. The time per load step is set as 0.05
seconds to be able to follow (and visualise) the collapse of the column in small steps. Therefore set:

1 $$NUMBER_OF_LOADSTEPS
2 52

3 $$TIME_PER_LOADSTEP
4 0.05

Verify that the gravity is kept at full level and, therefore, the gravity multipliers are equal to:

23 $$GRAVITY_LOAD
24 step 1.0 1.0

Switch off the convergence to the quasi-static equilibrium as now the full dynamic behaviour of the column
will be analysed. Therefore:

31 $$QUASISTATIC_CONVERGENCE
32 0

For the same reason also reduce the local damping coefficient to 5% and set:

41 $$HOMOGENEOUS_LOCAL_DAMPING
42 1 0.05

To enable the collapse of the column the fixities (in this example only solid fixities) at the right side of the
column have to be removed. Therefore, set:

73 $$REMOVE_FIXITIES
74 100

All other calculation options in this example should be kept with the provided default values.
Continue the calculation in the same project directory following instructions described in Section 3.3. Auto-
matically, the CPS file with the highest step number will be chosen for calculation, i.e. columncollapase.CPS_003.
The next 50 steps will be calculated and the progress can be followed in the command line window.
The calculation of the column failure phase should be finished in approximately 3 minutes depending on
the performance of your PC.
148 Anura3D MPM Software, Tutorial Manual

7.4 Visualisation of results in ParaView


The results for the dry column example are presented for the end of the gravity loading phase and the end
of the column failure phase.
7.4.1 Gravity loading
The vertical and horizontal effective stresses after gravity loading are shown in Figure 7.15.

(a)

(b)

Figure 7.15: Effective stresses [kPa] after gravity loading for one-phase dry soil.
a) Vertical stresses. b) Horizontal stresses.
7.4.2 Column collapse
The final total displacements after collapse are shown in Figure 7.16a. The deviatoric strain after collapse
is shown in Figure 7.16b. The vertical effective stress in [kPa] after collapse is shown in Figure 7.16c.
Column collapse 149

(a)

(b)

(c)

Figure 7.16: Total displacements (a), Deviatoric strain (b) and Vertical stresses (c) after the col-
lapse of one-phase dry soil.
7.5 Variations
The following cases are proposed.
3.1 Three-dimensional plane strain model.
3.2 Variation of the internal friction angle o the soil.
3.3 Variation of the local damping.
3.4 Variation of the column ratio.
3.5 Saturated column colapse - fully coupled formulation.
3.6 Apply contact formulation between the base and the soil.
7.5.1 Variation: Three-dimensional plane strain model
Repeat the analysis with a three-dimensional model as shown in Figure 7.17. The dimensions in z-
direction for the three-dimensional model are given in Table 7.1.
150 Anura3D MPM Software, Tutorial Manual

Figure 7.17: Problem definition for the case 3D of a collapsing column including base layer.

Extrude the two-dimensional geometry to create a three-dimensional model as shown in Figure 7.18.
Re-assign the material properties, boundary conditions, removing fixities, body contact, and calculation
parameters. Create a mesh consisting of volume elements. It is noted that three-dimensional analyses
require significantly longer calculation times than two-dimensional analyses.

Figure 7.18: Geometry of the two-dimensional column collapse problem for ratio 2:1 including
empty entities on the right and top side of the column.

The results presented in the following variations are obtained using the three-dimensional model. The
two-dimensional plane strain analysis should provide an equivalent solution to the same problem since
this is a plane strain problem (e. g. compare Figure 7.16b and 7.20a).
7.5.2 Variation: Variation of the internal friction angle of the soil
Examine the influence of the internal friction angle of the soil column with the Mohr-Coulomb constitutive
model. There are two ways to re-run the simulation:
(1) Copy the initial files (GOM, CPS, zlib.dll, caluclate.bat and anura3d.exe) to a new folder. Open the
GOM file in a text editor and search for $$FRICTION_ANGLE. Change this value to the desired one
and save. Open calculate.bat and change the folder address. Then, re-run.
(2) Open the MPM model in GiD, change the friction angle to the desired value. Remesh, save as new
simulation, and generate files.
Results for different values for φ′ obtained from a three-dimensional model are shown in Figures 7.20b
and 7.20c.
Column collapse 151

7.5.3 Variation: Variation of the local damping


Examine the influence of local damping. Change the value of the local damping coefficient in the range
between 0.0 (no local damping) and 0.3 (large local damping) in the CPS file. Compare the results with
the case of 5% local damping. See results in Figure 7.20d.
The local damping coefficient controls the amount of local damping in the system and is defined in the
CPS file. Open the CPS file with a text editor, switch on the use of homogeneous local damping and
modify the local damping coefficient to e.g. 0.10.

1 $$HOMOGENEOUS_LOCAL_DAMPING
2 1 0.1

7.5.4 Variation: Variation of the column ratio


Examine the influence of the column ratio by changing the column ratio to 1:1 and 1:2. Change the
geometry in the GiD preprocessor. Compare the results with the case of 2:1. The dimensions for each
case are summarised in Table 7.3.

Table 7.3: Dimensions of the collapsing column for different ratios of height to width.

Column height Column width depth Box height Box width Base layer
ratio
H [m] W [m] D [m] B [m] L [m] S [m]
1:1 1.0 1.0 0.1 1.1 10.0 0.2
1:2 1.0 2.0 0.1 1.1 10.0 0.2

7.5.5 Variation: Saturated column colapse - fully coupled formulation


Change the material column to a saturated soil with Mohr-Coulomb elasto-plastic model using the pa-
rameters given in Table 7.4 and perform a two-phase coupled analysis. In this case the fixities should be
applied also to the liquid phase. Compare the results with the case of the dry soil column.
Material definition: In the GiD preprocessing, the column material type has to be set to "saturated ma-
terial" and the material properties have to be defined accordingly (Table 7.4). The calculation will be
automatically performed with the fully coupled two-phase formulation.
Applying fixities: The same boundary conditions as defined in Section 7.2.5 must be applied to both solid
and liquid phases using the "Solid and Liquid Fixity (surface)" option. A liquid fixity has to be defined
in vertical direction (y-direction) at the top boundary of the base layer (Figure 7.19). This fixity ensures
impermeability at the base.

Figure 7.19: Liquid fixities of the column collapse problem in GiD.

Removing fixities: At the right side of the column, the applied solid and liquid fixities in the horizontal direc-
tion (x-direction) have to be removed to allow the column to collapse after its stresses are initialised. There-
fore, in GiD preprocessor, follow the steps form Section 7.2.5 but in this case select "Remove Solid+Liquid
Fixity (surface)" option. The fixities at the right side of the column have to be removed for both the solid
and the liquid to allow the column to collapse. Therefore, set the following in the CPS file.
152 Anura3D MPM Software, Tutorial Manual

Table 7.4: Material parameters of the collapsing column for different variations.

Parameter Unit Soil


Material type saturated material - fully coupled
Density liquid [kg/m3 ] 1000
Bulk modulus liquid [kPa] 2.15 · 104
Dynamic viscosity liquid [kPa/s] 1.002 · 10–6
Initial porosity [–] 0.4
Solid density [kg/m3 ] 2650
K0-value [–] 0.5
Intrinsic permeability [m2 ] 1.0214 · 10–9
Material model solid Mohr-Coulomb
Young’s modulus [kPa] 10000
Poisson ratio [–] 0.3
Cohesion [kPa] 0
Friction angle [◦ ] 30
Dilatancy angle [◦ ] 0
Tensile strength [kPa] 0

1 $$APPLY_REMOVE_FIXITIES
2 110

7.5.6 Variation: Apply contact formulation


Apply the contact formulation (refer to 6) between the column and the base layer by using the body contact
option in the GiD preprocessor. Examine the influence of the friction coefficient in the range between 0.0
(no friction) up to 0.577 (fully rough contact for an angle of internal friction of 30◦ ).
Contact properties must be defined in GiD preprocessor following instruction from Section 6.2.6. Note
that in this example only one material "column" slides on top of the base layer.
Switch on the contact formulation to allow sliding between the column material and the base layer. There-
fore, set the following in the CPS file.

1 $$CONTACT_FORMULATION
2 1
Column collapse 153

(a)

(b)

(c)
(d)

Figure 7.20: Results of deviatoric strain after collapse for: a) 3D problem with a friction angle of
φ′ = 20◦ , b) case 1 with a friction angle of φ′ = 30◦ , c) re-calculation with a friction
angle of φ′ = 60◦ , d) re-calculation with homogeneous local damping of 30%
7.6 Discussion
Some general remarks:
⋄ With material point integration (i.e. MPM-MP) the results are less accurate as with Gauss point inte-
gration (i.e. MPM-MIXED). Due to larger inaccuracies due to bigger effects of grid crossing of material
points, the stresses are less accurate and solution is converging less good.
⋄ Using an unstructured mesh increases the calculation time as the critical time step is usually reduced.
The results are not significantly different for this example.
⋄ Using the strain smoothing algorithm shear bands appear much more localised than using classic
Mohr-Coulomb model, but this has an effect on strain-history dependent models.
⋄ A more in-depth discussion is available in "The role of constitutive models in MPM simulations of
granular column collapses" by ? ].
154 Anura3D MPM Software, Tutorial Manual
8 Shallow foundation
Authors: Alba Yerro; Francesca Ceccato; Alexander Rohe; Bruno Zuada; James Fern; John Murphy; Luis
E. Zambrano-Cruzatty; Abdelrahman Alsardi
This tutorial explains the use of Anura3D 2023 for the following functionalities:
⋄ Load multipliers (2 systems named ’A’ and ’B’)
⋄ Prescribed velocity
⋄ Reaction forces
⋄ Moving mesh.
A shallow foundation problem is simulated in 2D-plane strain conditions to show the above functionalities.
The soil reaction to the structure movement is measured during the calculation with the option Reaction
Forces. The exercise is solved with two approaches:
3.1 a load is applied at the top of the foundation, and its magnitude increases progressively by means of
the load multipliers. A variation of this will be presented where a surcharge will be included across
the soil ground surface, which will be progressively decreased after the foundation load is applied.
3.2 the foundation moves downward into the soil with a prescribed velocity bringing soil to failure
The moving mesh feature [? ? ? ] exploits the fact that in MPM, all properties of the continuum are
stored at the material points. Therefore, the mesh can be freely redefined at the end of each time step
because the mesh does not store any permanent information. The moving mesh feature adjusts the
mesh to the movement of a reference material (usually the structure, i.e. the foundation in this case) after
each time step, ensuring that the surface of the structure coincides with element boundaries throughout
the computation. With this approach, the mesh area adjacent to the foundation moves with the same
average displacement as the structure. The elements in this moving area keep the same shape during
the analysis, while the elements in a compressed area reduce their vertical length. The discretization of
the compressed zone should be defined in such a way that the elements keep a reasonable aspect ratio
until the end of the simulation.
The moving mesh feature is particularly useful in combination with the contact formulation and when reac-
tion forces need to be computed. Indeed, if a body or structure is expected to move during the simulation,
it is necessary to keep the element boundaries aligned with the object (i.e. the object should be very stiff
or rigid). Similarly, if the reaction forces on a predefined surface, for example the soil–foundation inter-
face, are computed, it is necessary that this interface follows the movement of the structure. The reaction
forces on a surface are computed as the sum of the nodal reaction forces over the nodes belonging to the
selected surface.
8.1 Problem definition
A rectangular shallow foundation is considered on top of a horizontal layer of soil. Taking advantage of the
symmetry of the problem, only half of the model is discretized in order to reduce the computational time.
The geometry and the dimensions of the problem are given in Figure 8.1 and Table 8.1. The problem
is simulated in 2D-plane strain conditions. Note that the boundaries have to be far enough from the
foundation. The single point formulation will be used.
The soil is modelled with the Mohr-Coulomb model and the foundation is elastic and stiffer than the soil.
The properties for both materials are given in Table 8.2. This information will be used for the material
definition in Section 8.2.4.
8.2 Creating input data
The geometry, discretization, material properties, and all other input parameters will be defined using the
GiD pre-pocessor. This follows a similar procedure as described in Section 3.2. In this chapter, only the
differences with respect to previous examples will be highlighted.
8.2.1 Starting pre-processor
Start the GiD pre-processor following the steps as described in Section 3.2.1, ensuring that you select the
problemtype. Save the project in the desired directory on the hard disk with an appropriate name (e.g.
"foundation").
156 Anura3D MPM Software, Tutorial Manual

b
Empty space e
Foundation h

Soil
y

Figure 8.1: Problem definition for failure of a shallow foundation.

Table 8.1: Dimensions of the shallow foundation problem.

dimension value
b 2m
h 1m
x 15m
y 10m
e 3m
Shallow foundation 157

Table 8.2: Material parameters of the foundation and the soil.

material foundation soil


material type dry material dry material
initial porosity [–] 0.0 0.4
density solid [kg/m3 ] 2000 (*) 2650
K0-value [–] 0.5 0.5
material model solid Linear Elasticity Mohr-Coulomb
Young modulus [kPa] 50000 20000
Poisson ratio [–] 0.33 0.33
cohesion [kPa] - 0.5
friction angle [◦ ] - 30
dilatancy angle [◦ ] - 0.0
tensile strength [kPa] - 0.0

8.2.2 Defining units and dimensions


The problem is simulated in 2D-plane strain conditions; therefore, under "Units and dimensions" in "Prob-
lem dimensions", select "plane-strain". Note that the boundaries have to be far enough from the founda-
tion. The single point formulation will be used; so, under "Units and dimensions" in "MPM discretization
type", select "single_point". Also, unsure that in "Units", the geometry, force and time units are in m, kN,
and s.
8.2.3 Defining geometry
To generate the geometry follow the instructions given in Section 3.2.2 considering the dimensions given
in Table 8.1. As a reference the key coordinates indicated in Figure 8.2 and Table 8.3 can be used.

Table 8.3: Key coordinates of the front face of the shallow foundation problem.

Point X coordinate [m] Y coordinate [m]


P1 0 0
P2 15 0
P3 15 10
P4 15 13
P5 0 13
P6 0 11
P7 0 10
P8 2 10
P9 2 11

8.2.4 Defining material properties


The shallow foundation model consists of two different materials: the foundation and the soil. A 1-phase
calculation will be performed because both materials are considered "dry". The foundation is elastic and
the material model for the soil is Mohr-Coulomb. Material parameters are given in Table 8.2. Note that
the Young modulus of the foundation used in this model is small compared with real foundation materials
such as concrete, but it is significantly larger than the soil to ensure a rigid behaviour of the structure. A
smaller Young modulus allows a larger critical time step and results are achieved faster, usually after a
few minutes.
Follow the instructions given in Section 3.2.4 to define each material. Checking the assigned materials, it
should look like shown in Figure 8.3.
158 Anura3D MPM Software, Tutorial Manual

Figure 8.2: Geometry of the front face of the shallow foundation model. Key coordinates are
indicated as given in Table 8.3.

8.2.5 Specifying material points


Specify the initial material point distribution following instructions from Section 3.2.5. In this example
choose 3 material points per element and assign it to the soil and the foundation materials. Check if
the material points are assigned correctly by right clicking on "Material Point Specification" and selecting
"Draw" and "Draw values" as shown in Figure 8.4.

Figure 8.4: Specification of the number of material points per element in the shallow foundation
problem.
8.2.6 Defining initial conditions
The stresses in the soil will be initialised at the very beginning of the calculations by means of the K0 -
procedure. Activate the K0 -procedure by selecting "Yes" in the "Apply K0-procedure" option. This option
is found in the Anura3D tree menu under the section "Initial conditions" → "Stress initialization" → "Hor-
izontal layered soil". Keep the initial vertical load to "0kPa" and set "Soil surface elevation" to "10.0m"
(Figure 8.5).
Shallow foundation 159

Figure 8.3: Materials of the shallow foundation problem.


160 Anura3D MPM Software, Tutorial Manual

Figure 8.5: K0 initialization for foundation problem in GiD.

8.2.7 Defining boundary conditions


Define the boundary conditions following the steps as described in Section 3.2.6.
Applying fixities
Since in this example materials are in dry conditions, only the solid phase needs to be considered. The
solid displacement at the boundaries will be fixed as follows:
3.1 Left side: horizontal fixity in x-direction on all three lines;
3.2 Right side: horizontal fixity in x-direction on both lines;
3.3 Top side: vertical fixity in y-direction on the top line;
3.4 Bottom side: full fixities in x- and y-direction on the bottom line;
3.5 Check if the x- and y- fixities are assigned correctly by right clicking on "Boundary Conditions" and
selecting "Draw" and "Draw values" as shown in Figure 8.6;
Applying prescribed velocity
A prescribed velocity can be applied to the nodes or to the material points. In the first example, the
prescribed velocity is assigned at material points (in the code, the material point velocity is mapped at
the nodes of the element, thus the body moves rigidly). In the second example, the prescribed velocity
is applied at the nodes. Because the foundation is very stiff, it is recommended to use this feature in
combination with the moving mesh. This will keep the boundary of the moving body always aligned
with the element boundary. Moreover, the prescribed velocity must be aligned with the moving mesh
direction and the moving mesh reference material must be the material on which velocity is prescribed
(the foundation in this case) (see 8.2.9).
Table 8.4 shows the available options for prescribed velocity in 2D and 3D models. In Anura3D 2023 only
one of these options can be applied in the same project.
In this problem we prescribe a velocity of –0.1m/s in y-direction at the material points of the foun-
dation, while the horizontal direction is free. This can be done through the menu <Bounary Condi-
tions><Prescribed Velocity><Material point Velocity>:
3.1 In Apply Material point velocity, select y direction.
3.2 (you might need to scrall down).
3.3 Enter –0.1m/s as the prescribed velocity.
3.4 Click on the <Select> button and choose the surface identifying the foundation, then press <OK>.
To check the assigned property right click on <Material point velocity>, select <Draw><Draw values> and
you will get the result in Figure 8.7. Then, click <Finish>. Note that x-direction is free, i.e. at the selected
Shallow foundation 161

Figure 8.6: Solid fixities of the shallow foundation problem in GiD.

Table 8.4: Prescribed velocity options.

Material Points Nodes


Surfaces
2D Surfaces Lines
Points
Volumes
Surfaces
3D Volumes
Lines
Points

nodes the velocity will result from the solution of the governing equations, while y-direction is prescribed,
i.e. the velocity is –0.1m/s.
Applying loading conditions
A vertical load ’A’ equal to –100 kPa will be applied in y-direction on the top of the foundation as shown in
Figure 8.8 (for more information on how to apply a load, please refer to "Applying loading conditions in 2D
and 3D" in section 3.2.6). Additionally, a vertical load ’B’ equal to –100kPa will be applied in y-direction to
represent a surcharge extending across the soil next to the footing. Note load A and B are specified in the
GiD pre-processor, but the user can specify to turn them on or off independently in the CPS file as will be
presented subsequently.
In this exercise the moving mesh approach will be used. This means that the surface on which the load
is applied will move together with the foundation, and therefore, load A can be applied on the nodes. On
the other hand, if a significant relative displacement between the loaded surface and the material points
is expected, the load should be applied on the material points instead, so the load is carried by them
throughout the simulation. This is the case of load B, that will be applied on the material points of the soil
material. Follow instructions in section 3.2.6 to apply the loading conditions.
162 Anura3D MPM Software, Tutorial Manual

Figure 8.7: Applied prescribed velocity on node.

Figure 8.8: Applied load on top of the foundation at the nodes (load system A) and on top of the
soil at the material points (load system B).
Shallow foundation 163

8.2.8 Defining a surface for computation of reaction forces


This feature allows the user to generate a text output file with extension .RSurf_XXX, where XXX is a
number that depends on how many surfaces are selected. This file collects, for each time step, the sum
of reaction forces over the nodes of the selected surface for different materials (see Section 8.3.5).
The following steps have to be taken to select a surface for computation of reaction forces:
3.1 Double click on <Reaction Forces> from the menu as shown in Figure 8.9a
3.2 Enter a name for the "line identifier", for example, "reaction".
3.3 Click on the <Select> button and select one (or more lines) for which the reaction forces should be
computed, in this case select the soil–foundation interface, as shown in Figure 8.9b. Note that only
one output file will be created for surfaces with the same name.
3.4 Check if the surfaces are assigned correctly. Right click on <Reaction Forces> and select <Draw><Draw
values>.
3.5 Click on <Finish> to exit.
The reaction forces can be computed for multiple surfaces by repeating the steps above. The maximum
number of surfaces that can be created is 50.

a) b)

Figure 8.9: Definition of the surface for computing reaction forces.


8.2.9 Defining the moving mesh
The moving mesh feature can be accessed through the menu <Moving Mesh> as shown in Figure 8.10.
Three domain areas can be defined, i.e. extending mesh, compressing mesh, and moving mesh. The
elements of the moving mesh domain translate as a whole in one specified direction following a reference
material, while the elements of the extending/compressing mesh domains will extend/compress during
the computation as a result of the movement of the moving mesh domain. The three domain areas must
be connected with each other and all elements of the discretised domain must belong to either one of
them. At least two domain areas must be defined, i.e. moving mesh + extending mesh, moving mesh +
compressing mesh, or moving mesh + extending mesh + compressing mesh). The shape of the mesh
domains must be rectangular. The different mesh domains must be connected.
164 Anura3D MPM Software, Tutorial Manual

Figure 8.10: Definition of the mooving mesh

The following steps have to be taken to define the moving mesh feature. Note that in this problem, only
compressive mesh and moving mesh domains will be defined.
3.1 Double click <Compressing Mesh> from the menu.
3.2 Click <Select> and select the 4 corner nodes that define the zone that will be compressed by the
movement of the moving mesh as shown in Figure 8.11. Select <OK> in the Compressing Mesh
window to finish assigning compressing mesh. Note that the surface defined by the corner nodes
must be a rectangle, thus exactly 4 nodes must be selected of which 2 must be on an external
boundary. Alternative shapes of the compressing/extending/moving mesh are not allowed.

Figure 8.11: Definition of compressing mesh corner nodes.


Shallow foundation 165

3.3 In this example no "Extending Mesh" will be used, thus no corner nodes must be selected for this
option.
3.4 Double click <Moving Mesh> from the menu.
3.5 Specify the direction of movement. In this example the foundation should move in vertical direction,
thus choose "y-direction" next to "Direction type".
3.6 Click <Select> and select the 4 corner nodes that define the moving mesh region as shown in Figure
8.12. Two of the moving mesh nodes must coincide with the 2 nodes of the compressing mesh, i.e.
the nodes of the top soil surface. The remaining 2 nodes must be on the free boundary, i.e. top
surface. Select <OK> in the Moving Mesh window to finish assigning moving mesh. Note that when
using both compressing and extending mesh, it is necessary that exactly 2 nodes of the moving
mesh coincide with 2 nodes of the compressing mesh and the remaining 2 nodes coincide with 2
nodes of the extending mesh.

Figure 8.12: Definition of moving mesh corner nodes and direction of movement.

3.7 Define the reference material that will determine the displacement of the moving mesh. Right click
on the <Moving mesh reference material> and select <Edit> to activate the draw down menu. Now,
all materials defined in the model are visible. Select "foundation".
3.8 Click <Assign> and select the structure surface, i.e. the foundation, as shown in Figure 8.13.
166 Anura3D MPM Software, Tutorial Manual

Figure 8.13: Definition of moving mesh reference material.

3.9 Check if the compressing and moving mesh domains are assigned correctly. Right click on <Com-
pressing mesh> or <Moving mesh> and select <Draw><Draw values>.
3.10 Click on <Finish> to exit.
8.2.10 Creating mesh
In GiD it is possible to generate meshes in a very flexible way. An unstructured mesh is used for this
example. To generate the mesh follow the steps given in Section 6.2.7. For this example set the mean
element size to "0.5". The mesh should look as shown Figure 3.2.7.

Figure 8.14: Computational mesh of the shallow foundation problem.


Shallow foundation 167

8.3 Approach 1: External load A and use of load multipliers


The input generated in the previous section is identical for both approaches 1 and 2; the differences
between these two methods are highlighted in the following. In the first approach, the foundation is
brought to failure by increasing the load applied on the footing to –1000kPa in 6 load steps by means
of the load A multipliers. Load A is increased at the beginning of the load step and kept constant until
quasi-static convergence is reached.
8.3.1 Initialisation of calculation data
To initalise the calculation data, select <CalculationData> from the menu and consider the following op-
tions.
Computation method
The option "MPM - mixed integration" should be selected.
Calculation step data
This example will be defined as a quasi-static problem and 6 load steps will be used. The end of each
step will be determined by the quasi-static convergence criteria. Set "number of calculation steps [-]" to
"6". A Courant number of 0.98 is advised to ensure the stability of the solution. Set "Courant number [-]"
to 0.98. Because this is a quasi-static problem, "time per calculation step [s]" will not affect the calculation.
Gravity data
Use standard "gravity acceleration" value: g = 9.81(0, –1.0, 0), and gravity load vector as (x, y, z) =
(0, –1, 0)
Gravity load
Gravity is applied from the beginning; therefore, choose Apply gravity load - stepwise and set the multi-
pliers for gravity loading as 1.0 (initial and final value). The gravity multipliers will be maintained constant
throughout the calculation.
Solid traction
In this example the external load A will be increased from –100kPa to –1000kPa in steps. Therefore, for
solid traction A, choose Apply solid traction - stepwise and the multipliers for external load must be 1.0
and 10.0. This means that the incremental load A is applied at the first time step and kept constant for the
entire load step computation. In this case, at load step 1 the external load A multiplier is

Ncurrent – Nprevious 1–0


Mstep = Minitial + (Mfinal – Minitial ) = 1.0 + (10 – 1) = 2.5 (8.1)
Ntotstep – Nprevious 6–0

where Mstep is the load multiplier of the current load step, Minitial is the initial load multiplier, Mfinal is
the final load multiplier, Ncurrent is the number of the current load step, Nprevious is the number of the
previous load step, and Ntotstep is the total number of load steps. In this case, the applied vertical load is
2.5 ∗ (–100kPa) = –250kPa.
Load B representing the soil surcharge will be turned off in this approach. Therefore, for solid traction B,
keep the default do not apply solid traction.
Prescribed velocity
In the first example the foundation is brought to failure increasing the load. Keep the default do not apply
prescribed velocity option because this example does not use the prescribed velocity feature.
Quasi-static convergence
This calculation will be performed using the quasi-static convergence approach; select apply convergence
criteria. In this type of analysis, the determination of the end of each load step is determined by conver-
gence criteria, which corresponds to a quasi-static equilibrium condition. The convergence criteria are
the tolerated error of the kinetic energy, the tolerated error of the out-of-balance force, or the maximum
number of time steps. In general, to obtain an accurate solution it is suggested to set the kinetic error
and the force error to 0.01; however, in this example, in order to reduce the computational time, use a
kinetic error of 0.01 and a force error of 0.05. This is a dry calculation, hence liquid errors can be left with
default values. If the calculation does not converge, it will stop when the macimum numer of time steps is
reached. You can leave the default value of 10000.
Homogeneous local damping
In order to damp oscillations to reach quasi-static convergence a local damping coefficient for all active
elements of 0.7 is applied. Select apply homogeneous local damping and enter the coefficient 0.7. This
168 Anura3D MPM Software, Tutorial Manual

value of local damping will be kept constant during the whole calculation since the quasi-static solution
should be reached.
Strain smoothing
Select "apply strain smoothing" to minimize the kinematic locking.
Output data
One material point located at the bottom of the foundation will be selected for which additional output files
will be created, (see Section 3.4.7 how to determine the ID number of a material point).
Default values
All other calculation options are not used in this example and the provided default values can be kept.
Shallow foundation 169

Figure 8.15: Dialogue box to define calculation parameters in GiD for the approach 1 of shallow
foundation problem. Note only load system A is used here.
170 Anura3D MPM Software, Tutorial Manual

8.3.2 Generating Input Files


After the geometry, material properties, boundary conditions, and calculation parameters are defined and
the mesh is generated the input files for the Anura3D analysis, i.e. GOM and CPS file, have to be
created. To generate the GOM and CPS files follow steps given in Section 3.2.9.
The generated input files foundation.GOM and foundation.CPS_001 can be found in the new folder
foundation.A3D, created in the directory which was specified earlier by the user (Section 8.2.1):
D:\..\foundation.A3D\foundation.GOM

D:\..\foundation.A3D\foundation.CPS_001

8.3.3 Performing calculation in Anura3D


The calculation can be performed as explained in Section 3.3.
Note that in foundation.CPS_002 the load multipliers are stored as,

1 $$SOLID_TRACTION
2 step 2.50 10.0

which means that the initial load multiplier is Minitial = 2.5 and the final load multiplier is Mfinal = 10.0, thus
the load multiplier of the current load step (number 2) is:

Ncurrent – Nprevious 2–1


Mstep = Minitial + (Mfinal – Minitial ) = 2.5 + (10 – 2.5) = 2.5 + 1.5 = 4.0 (8.2)
Ntotstep – Nprevious 6–1

and therefore the applied vertical load is 4.0 ∗ (–100kPa) = –400kPa.


Similarly, in foundation.CPS_003 the load multipliers are stored as,

1 $$SOLID_TRACTION
2 step 4.0 10.0

8.3.4 Visualisation of results in ParaView


The results for the shallow foundation problem are presented in this section. The recommended way to
visualise Anura3D results is by using the ParaView software (see Sections 2.5 and 2.1.3). Instructions
presented in Section 3.4 can be followed to open and analyse the results from the shallow foundation
problem.
In order to appreciate the effect of the moving mesh feature, the material index will be plotted and the
Axis Grid will be switched on as shown in Figure 8.16. Note that in this example material_id=1 is the
foundation and material_id=2 is the soil. The material index can be retrieved from the GOM file.

1 $$MATERIAL_INDEX
2 1
3 $$MATERIAL_NAME
4 foundation

1 $$MATERIAL_INDEX
2 2
3 $$MATERIAL_NAME
4 soil

Figure 8.17 shows the displacement of the moving mesh area, which moves downwards following the
displacement of the foundation, and the deformation of the compressing mesh area. Note that the ma-
terial points of the foundation do not cross element boundaries and the soil–foundation interface remains
aligned with the element boundaries. In Figure 8.18 the evolution of displacements is presented.
Shallow foundation 171

Figure 8.16: Initial mesh and plotting the material index.

Moving mesh
Moving mesh

Compressing Compressing
mesh mesh

Figure 8.17: Displacement of the mesh at the beginning of the computation and after load step
6.
172 Anura3D MPM Software, Tutorial Manual

(a) (b)

(c) (d)

(e) (f)

Figure 8.18: Displacement after: a) load step 1, b) load step 2, c) load step 3, d) load step 4, e)
load step 5 and f) load step 6.
Shallow foundation 173

8.3.5 Visualisation of text output files


Following the instructions from Section 3.6, the evolution in time of vertical displacement of a material
point located at the bottom of the foundation (3957) can be plotted. Figure 8.19 shows that the vertical
displacement of MP #3957 increases rapidly at the beginning of each load step, due to the sudden in-
crease of the applied load, and then stabilizes approaching the quasi-static equilibrium. The load multiplier
for solid traction increases in step during the calculation (blue dashed line in Figure 8.19) while gravity is
constant (red dot-dashed line in Figure 8.19).

Multiplier

Figure 8.19: Evolution of vertical displacement for a material point located at the foundation bot-
tom, and value of load multipliers.

Time step information Reactions of material 1 Reactions of material 2

Figure 8.20: Output file for reaction forces .RSurf_001 .

The results file foundation.RSurf_001 can be opened using Excel or with NotePad, see Figure 8.20.
The first line of the file indicates the surface name, i.e. the name that has been assigned in GiD. The
174 Anura3D MPM Software, Tutorial Manual

first 3 columns of the file contain time information. The following 4 columns contain the sum of the nodal
reaction forces on the surface in x- and y-direction for material 1 and 2, respectively. The maximum
number of materials that can be handled in this output file is 3. For 2-phase analyses, the reaction forces
due to the pore pressure are given.
The results of this file can be plotted with any chart making program. Figure 8.21 shows the vertical
reaction forces for material 1 (foundation) and 2 (soil); the forces have similar values but opposite sign. As
expected, for each load step the reaction force is:

R = Mstep qb = Mstep (100kPa)(2m) (8.3)

and it maximum value is 2000kN/m.

load step:
3000 1 2 3 4 5 6

2000
SumReactionY [kN/m]

1000

material 2 (soil)
0 material 1 (foundation)

-1000

-2000

-3000
0 1 2 3 4 5
Time [s]

Figure 8.21: Vertical reaction forces.

8.3.6 Approach 1 - Variation: add load system B to simulate surcharge on soil


Anura3D 2023 is equipped with two independent load systems that have been defined in section 8.2.7. To
showcase this feature, Approach 1 (section 8.3.1) is varied and the surcharge load across the soil near the
footing is activated (load B). The load system conditions are shown in Figure 8.8. For load A (associated
with the footing), the multipliers are identical to what was previously presented in the original Approach 1
(section 8.3.1). The multipliers for load B are also presented in Figure 8.22 (initially constant followed by
a reduction of the load). In this section, the effect of having two load systems A and B corresponding to
the footing and the surcharge, respectively, is investigated.
The file initialization in GiD is identical to Approach 1 except for the <Calculation Data> (section 8.3.1).
The load multiplier B is turned on and its value is kept at 100kPa for the first six load steps as shown
in Figure 8.23. In order to do so, one can modify the <Calculation Data> in the original GiD project as
seen in Figure 8.23. Another option is to directly open the foundation.CPS_001 text file generated in
Approach 1 and modify the corresponding flag input as follows:
Shallow foundation 175

Figure 8.22: Evolution of load multipliers

1 $$SOLID_TRACTION_B
2 step 1.0 1.0

Figure 8.23: Dialogue box showing the activation of load system B associated with the soil sur-
charge.

The calculation is performed as discussed in Section 3.3. Subsequently, after the calculation is done, four
more load steps are adopted to decrease load B to zero as shown in Figure 8.23. To do so, the number
of load steps in foundation.CPS_007 is directly edited and increased to a total of 10, as follows:

1 $$NUMBER_OF_LOADSTEPS
2 10

Additionally, the load B multiplier is set to zero at the end of the simulation as follows:

1 $$SOLID_TRACTION_B
2 step 1.0 0.0

The calculation is then performed for the four additional load steps. Vertical displacement results for the
material point directly below the footing is shown in Figure 8.24. Additionally, the external force vector
applied on the material points can be visualized in Paraview as shown in Figure 8.25.
8.4 Approach 2: Prescribed velocity
With this approach, the foundation penetrates into the soil with a prescribed vertical velocity of 0.1m/s and
the reaction offered by the soil is measured at the soil-foundation interface. We will not activate the solid
traction on the foundation and we will not use the quasi-static convergence criteria.
176 Anura3D MPM Software, Tutorial Manual

Figure 8.24: Evolution of vertical displacement with different load system combinations. Note
the simulation time is not consistent for all three simulations because it depends on
the quasi-static convergence criteria in each load step.

8.4.1 Initialisation of calculation data


The file initialization in GiD is identical to Approach 1 except for the <Calculation Data> (section 8.3.1). All
calculation parameters are identical to the previous case, except for those listed below:
Calculation step data
In this example 8 load steps of 0.5s will be used. Set "number of calculation steps [-]" to "8" and "Time
per calculation step [s]"’ to "‘0.5"’.
Solid traction
In this example we will not apply solid traction, thus the option do not apply solid traction must be selected.
Prescribed velocity The velocity is constant throughout the calculation, thus select apply prescribed
velocity - stepwise and set the multipliers to 1.0 and 1.0.
Quasi-static convergence
Set do not apply convergence criteria.
Homogeneous local damping
Set no homogeneous local damping. This is a slow process, thus a very small amount of damping (e.g.
5%) can be used to damp dynamic oscillations.
8.4.2 Generating input files
The generation of input file is identical to the previous case, see Section 8.3.2.
8.4.3 Performing calculation in Anura3D
The calculation can be performed as explained in Section 3.3.
Shallow foundation 177

(a) (b)

(c) (d)

Figure 8.25: Evolution of external force carried by the material points as load B is decreased
from 100kPa to zero.

8.4.4 Visualisation of results


To open the results with ParaView software (see Sections 2.5 and 2.1.3) proceed as explained in Section
3.4. Figure 8.27 shows the vertical velocity of material points, where it could be see than the velocity of
the foundation is -0.1m/s.
178 Anura3D MPM Software, Tutorial Manual

Figure 8.26: Dialogue box to define calculation parameters in GiD for the shallow foundation
problem.
Shallow foundation 179

8.5 Variations
The variations proposed for the shallow foundation problem are listed below:
3.1 Examine the influence of the fricton angle of the soil on the failure mechanism and the value of the
ultimate bearing capacity.
3.2 Use the contact formulation and study the effect of soil–foundation contact properties on the results.
3.3 Consider a square footing and solve the problem with the 3D model.
3.4 Consider a circular footing and solve the problem with the 3D-cylindrical formulation (see A).
180 Anura3D MPM Software, Tutorial Manual
9 Impact problem
Authors: Luis Zambrano-Cruzatty; Alba Yerro; John Murphy
This tutorial aims to show how to use the features of Anura3D to simulate impact on soils. The goals of
this example are the following:
⋄ Apply initial velocity on the material points.
⋄ Use the moving mesh feature.
⋄ Record reaction forces.
⋄ Use the rigid body algorithm.
⋄ Create an axisymmetric domain using 3D cylindrical boundary conditions.
First, a wall impacting the soil is simulated using 2D plane strain conditions (Figure 9.1a). Afterwards,
a variation is proposed considering an axisymmetric domain using 3D cylindrical coordinates simulating
free fall impact into soil (Figure 9.1b).

Figure 9.1: Impacting body. a) long wall, b) free fall penetrometer.

The moving mesh feature is explained in chapter 8. The moving mesh feature is important in this problem
because of the following reasons:
⋄ The moving mesh prevents mixing of material points in elements. Therefore, the material points of the
impacting body are always on the same element thought the calculation.
⋄ The shape of the impacting body is preserved during the simulation.
⋄ The contact surface is well defined. Thus, the contact algorithm and the reaction forces features can
be used.
⋄ Fine meshing can be defined along the impacting body, avoiding unnecessary refinement and reduc-
ing computational resources.
Likewise, the rigid body algorithm is introduced in this chapter. The use of the rigid body algorithm can
accomplish the following:
⋄ Computational resources are saved because stresses are not integrated ion the rigid material.
⋄ Further computational resources are saved because the critical time step is not longer affected by the
stiffness of the rigid body.
182 Anura3D MPM Software, Tutorial Manual

9.1 Problem definition


First, the problem is simulated in 2D-plane strain condition (in 9.4 a 3D cylindrical axisymmetric simulation
is proposed). The geometry and the dimensions of the problem are given in Figure 9.2 and Table 9.1.
Taking advantage of the symmetry of the problem, only one-half of the model is discretised in order to
reduce the computational time.
The impacting body is simulated using i) linear elasticity in this section, and ii) as a rigid body in section
9.3. The soil is modeled with a cohesionless Mohr-Coulomb model. The properties for both materials are
given in Table 9.2.

Figure 9.2: Geometry of the impact problem.

Table 9.1: Dimensions of the impact problem.

dimension value
a 0.5m
b 1m
c 1.1m
d 1m
e 0.0309m
r 0.0179m
Impact problem 183

Table 9.2: Material parameters of the impacting body and the soil.

Material Impacting body Soil


Material type Dry material Dry material
Initial porosity [–] 0.0 0.5
Density solid [kg/m3 ] 3500 2650
K0-value [–] 0.5 0.6
Material model solid Linear Elasticity Mohr-Coulomb
Young modulus [kPa] 50000 5000
Poisson ratio [–] 0.33 0.33
Cohesion [kPa] - 0.5
Friction angle [◦ ] - 40
Dilatancy angle [◦ ] - 0.0
Tensile strength [kPa] - 0.0

9.2 Creating input data


The geometry, material properties, fixities, number of material points, initial calculation parameters, and
mesh are defined using the GiD pre-processor. This example follows a very similar procedure as de-
scribed in sections 3.2 and 8. The application of initial velocity on the material points is illustrated below.
9.2.1 Starting pre-processor
Start the GiD pre-processor following the steps as described in Section 3.2.1. Save the project in the
desired directory on the hard disk with an appropriate name (e.g. "impact").
9.2.2 Defining geometry
The geometry can be generated following instructions given in Section 3.2.2 considering the dimensions
given in Table 9.1. The key coordinates indicated in Figure 9.3a and Table 9.3 can be used for reference.

Table 9.3: Key coordinates for the impact problem.

Point X coordinate [m] Y coordinate [m]


P1 0 -1
P2 0.5 -1
P3 0.5 0
P4 0.5 1.1
P5 0 1.1
P6 0 1
P7 0 0
P8 0.0179 0.0309
P9 0.0179 1

9.2.3 Defining material properties


Before specifying material properties ensure that the problem type has been set as described in Section
3.2.1 step (2).
This impact problem uses two materials; 1) the soil which is simulated as a non-cohesive material, and
2) the impacting body that is usually rigid compared to the soil. The impacting body is considered elastic,
and the material model for the soil is the Mohr-Coulomb. Material parameters are given in Table 9.2. As
described in section 8.2.4, the Young modulus of the impacting body is quite small compared with its real
modulus.
First, create the materials dictionary as explained in section 3.2.4. After completion the list of materials
should look like it is shown in Figure 9.4a.
184 Anura3D MPM Software, Tutorial Manual

Figure 9.3: Geometry and material specification of the impacting cone. a) key points (Table 9.3);
b) material specification.

9.2.4 Specifying material points and assigning materials


Follow the instructions given in Section 3.2.4 to define each material and assign it to the corresponding
areas. Once the materials are assigned the problem should look like is shown in Figure 9.3b. The
properties of the materials are also shown in the problem type tree in Figure 9.4a.
Specify the initial material point distribution following instructions from Section 3.2.5. In this example
choose one (1) material point per element for the impacting body, and three (3) material points per element
for the soil. Check if the material points are assigned correctly as shown in Figure 9.4b.
9.2.5 Defining initial conditions
The stresses in the soil will be initialized at the very beginning of the calculations employing the K0 -
procedure. The "Apply K0-procedure" option has to be switched to "Yes" and "Soil surface level" must
be set to "0.0 m" (Figure 9.5). This option is found in the Anura3D tree menu under the section "Initial
conditions" → "Stress initialization" → "Horizontal layered soil"
9.2.6 Defining boundary conditions
Define the boundary conditions following the steps as described in Section 3.2.6.
Applying fixities
Since the materials in this example are in dry conditions, only the solid phase conditions are needed. The
solid displacement at the boundaries are fixed as follows:
3.1 Left side: horizontal fixity in x-direction on all three lines;
3.2 Right side: horizontal fixity in x-direction on both lines;
3.3 Top side: vertical fixity in y-direction on the top line;
3.4 Bottom side: vertical fixities in y-direction on the bottom line;
3.5 Check if the x- and y- fixities are assigned correctly, see Figure 9.6;
Impact problem 185

Figure 9.4: Creating and assigning materials for the simulation of impact simulations.Subplot
a) shows the view of the problem type tree, and b) materials are assigned to their
corresponding areas.

Figure 9.5: Initial stress conditions definition.


186 Anura3D MPM Software, Tutorial Manual

Figure 9.6: Solid fixities of the impact problem in GiD.

9.2.7 Defining initial velocity on material points


The initial impact velocity is assigned to the material points belonging to the impacting body (note that
the impacting body tip is initially placed at contact with the soil). An initial velocity of 5 m/s is assigned to
the falling body expanding the "Initial conditions" drop-down menu and clicking on the "Initial Velocity (on
material points)" option as shown in Figure 9.7:
3.1 Specify 5 m/s in the y-direction text box as shown in Figure 9.7;
3.2 CLick on the select button as shown in Figure 9.7.
3.3 Assign the condition to the region belonging to the impacting body;
3.4 Click on the "OK" and a new group condition will appear under the "Initial Velocity (on material
points)" menu as shown in Figure 9.7.
You can check that the condition was correctly imposed doing right click over the new group and then
clicking on the "draw values" option.
9.2.8 Defining a surface to record reaction forces
Two surfaces are defined for computation of reaction forces: 1) The surface at the tip of the impacting
body, and 2) the lateral surface along the impacting body. Follow the instructions explained in section
8.2.8 to assign the reaction surfaces. Figure 9.9 shows the considered reaction surfaces.
Impact problem 187

Figure 9.7: Steps required to apply initial velocity to material points.

Figure 9.9: Definition of the surface for computing reaction forces.


9.2.9 Defining the moving mesh
In this problem, the moving mesh feature is used. The compressing mesh, the moving mesh, and the
reference material can be defined as shown in section 8.2.9. Figure 9.10 shows the definition of the
moving mesh for the impact problem.
9.2.10 Creating mesh
An unstructured mesh is used for this example. To generate the mesh follow the steps given in Section
6.2.7. For this example set the mean element size to "0.02". The mesh should look as shown in Figure
9.11.
188 Anura3D MPM Software, Tutorial Manual

Figure 9.8: Visualizing the application of initial velocity on material points.

9.2.11 Calculation parameters


The calculation will be carried out in a single stage. For this example, the following configuration is used.
Computation method
The computation method used in this example is the Gauss point integration. Therefore the option "MPM
- mixed integration" should be selected.
Calculation step data
The simulation is carried out in 25 calculation steps. Each step will be 0.005 s long. A Courant number of
0.98 is advised to ensure the stability of the solution.
Gravity Load and Multipliers
The K0 -procedure is used to initialize the stress in this example, the gravity is fully applied from the
beginning. The gravity multipliers will be maintained constant throughout the calculation. Therefore, either
"apply gravity load - step" or "apply gravity load - linear" are acceptable Gravity Load selections. Set the
multipliers for gravity loading as 1.0 for both the initial and final values. In this example the external load
will not be used; therefore the multipliers for external load must be 0.
Strain smoothing
The strain smoothing setting is switched to "apply strain smoothing" to minimize the kinematic locking.
Strain smoothing is applied to the volumetric strains.
Initial velocity
To activate the initial velocity at the beginning of the calculation (i.e., from the first load step), the ’Initial
velocity’ option must be set to ’Apply initial velocity.’ In this manner, initial velocity specified in section 9.2.7
will be written to the material points.
Output data
Three material points located at the bottom, middle, and top part of the impacting body will be selected for
which additional output files will be created, i.e., material points with ID number 1, 35, and 51 (see Section
3.4.7 how to determine the ID number of a material point).
Default values
All other calculation options are not used in this example, and the provided default values can be kept.
To define the initial calculation parameters follow the instructions detailed in Section 3.2.8. For this exam-
ple, enter the values given below as shown in Figure 9.12.
Impact problem 189

Figure 9.10: Definition of the moving mesh. a) compressing mesh corners; b) moving mesh
corners; c) reference material
190 Anura3D MPM Software, Tutorial Manual

Figure 9.11: Computational mesh of the impact problem.

⋄ select "COMPUTATION METHOD" as "MPM - mixed integration" from the drop down menu
⋄ set "number of calculation steps [-]" to "25"
⋄ set "time per calculation step [s]" as "0.005".
⋄ set "Courant number" to "0.98"
⋄ set "GRAVITY LOAD" to "apply gravity load - linear"
⋄ set "gravity multiplier initial and final [-]" to "1.0" and "1.0"
⋄ set "STRAIN SMOOTHING" as "apply strain smoothing"
⋄ set "INITIAL VELOCITY" as "apply initial velocity"
⋄ select "number of material points" as "3" from the drop down menu
⋄ set "material point #1 to "1", "material point #2 to "35", and "material point #3 to "51"
All other calculation parameters can be kept at their default values.
Impact problem 191

Figure 9.12: Dialogue box to define calculation parameters in GiD for the impact problem.
9.2.12 Generating input files
After the geometry, material properties, boundary conditions, and calculation parameters are defined and
the mesh is generated, the input files for the Anura3D analysis, i.e., GOM and CPS file, have to be
created. To generate the GOM and CPS files follow steps given in Section 3.2.9.
The generated input files impact.GOM and impact.CPS_001 can be found in the new folder impact.A3D,
created in the directory which was specified earlier by the user (Section 9.2.1):

D:\..\impact.A3D\impact.GOM

D:\..\impact.A3D\impact.CPS_001

9.2.13 Performing calculation in Anura3D


The calculation can be performed as explained in Section 3.3.
192 Anura3D MPM Software, Tutorial Manual

9.2.14 Visualisation of results in ParaView


The results for the impact problem are presented in this section. The recommended way to visualise
Anura3D results is by using the ParaView software (see Sections 2.5 and 2.1.3). Instructions presented in
Section 3.4 can be observed. Figure 9.13 presents the evolution of the deviatoric strain during the impact
problem.

Figure 9.13: Evolution of the deviatoric strain.


Impact problem 193

9.2.15 Visualisation of text output files


Following the instructions from Section 3.6, the evolution of the penetration depth vs. time can be plotted
for points belonging to the impacting body. Results are presented in Figure 9.14.

Figure 9.14: Penetration depth vs. time.

The reaction surfaces chosen for this example are those required to observe the tip (RSurf_001) and
shaft resistance (RSurf_002). Section 8.3.5 presents detailed instruction to open and visualize Rsurf files.
Figure 9.15 shows the tip and shaft force developed as function of the penetration depth. Note that the
results contained in a Rsurf file are force vs. time, but because the PAR and Rsurf file contain results for
the same time domain, their results can be plotted together.

Figure 9.15: Tip and shaft reaction forces (from RSurf files) vs. penetration depth (from PAR
files).
194 Anura3D MPM Software, Tutorial Manual

9.3 Variation: Simulation of the impacting body as a rigid body


In this subsection, a variant of the impact problem is proposed using the rigid body algorithm. Note that
for this geometry, the impact body represents a long wall (Figure 9.1a). In the previous example, the
material was considered linear elastic with Young’s modulus of 50,000 kPa. This stiffness is lower than
the modulus of steel and concrete. The implementation of realistic elastic modulus of these materials is
computationally expensive, because the critical time step is drastically reduced. To simulate rigid motion,
Anura3D uses a simple but efficient algorithm to simulate rectilinear movement. A detailed explanation of
how the algorithm works can be found in [? ].
The model is based on the same geometry and boundary configurations as the previous example (section
9.2.13), hence the file created for the previous model can be used as a starting point.
9.3.1 Starting pre-processor
Start the GiD pre-processor following the steps as described in subsection 3.2.1. Save the file as a new
GID problem with a consistent name (e.g. Impact_v2.GID).
9.3.2 Defining geometry
The geometry can be defined following the instructions in subsection 9.2.2.
9.3.3 Defining material properties
It is important to follow the next steps to ensure the correct functionality of the rigid body:
3.1 The user must define the rigid body material last, i.e. after all other materials are defined. This
is because the last material index is internally reserved for the master contacting body.
3.2 In case the impacting body material is not the last material, it is recommended to delete all materials
and start from the beginning.
3.3 To assign a material as a rigid body, select "rigid body" in the material model solid drop list shown
in Figure 9.16.
3.4 Specify the motion constraints. In this variation, the motion must be solely in the y-direction; hence,
the x-direction must be constrained.
3.5 Save the clicking in the "OK" button.
3.6 Check that the materials have been assigned correctly by clicking on "draw" and then "draw values."
Impact problem 195

Figure 9.16: Rigid body material assignation.


9.3.4 Specifying material points
If this variation was created based on the previous example, there is no need to modify the material points
configuration. Otherwise, follow the steps indicates in section 9.2.4.
9.3.5 Defining boundary conditions
The boundary conditions are the same as in section 9.2.6. If the previous model files were used as a base
for this variation, there is no need to modify the fixities.
9.3.6 Defining initial velocity on material points
Similarly as in section 9.2.7, assign the velocities to the surface representing the wall. The velocity to be
assigned is –5m/s on the y-direction.
196 Anura3D MPM Software, Tutorial Manual

9.3.7 Defining contact properties


It is important to highlight that the rigid body algorithm requires the activation of the contact algorithm.
Hence, it has to be assigned and activated in the CPS file. In this variation, we will simulate a fully rough
contact (to compare results with example showed in section 9.4.12). Therefore, assign the following
properties to the contact: 2 for the friction and 10 kPa for the adhesion (Figure 9.17).
To learn more about the contact algorithm, refer to chapter 6.

Figure 9.17: Contact properties.


9.3.8 Defining a surface for computation of reaction forces
Follow the instructions explained in sections 8.2.8 and 9.2.8 to assign the reaction at surfaces. Select two
(2) surfaces: the tip and the shaft.
9.3.9 Defining the moving mesh
The moving mesh is set in the same fashion as demonstrated in section 9.2.9. If this variation was
constructed based on the previous model, there is no need to define the moving mesh again.
9.3.10 Creating the mesh
To generate the mesh follow the steps given in Section 6.2.7. The mesh is identical to the one created in
section 9.2.10. Regenerate the mesh even if the previous model is used for this variation.
9.3.11 Calculation parameters
Follow the instructions in section 9.2.11 to assign the calculation parameters. Remember to activate the
contact algorithm as shown in Figure 9.18.
9.3.12 Performing calculation in Anura3D
The calculation is executed as explained in Section 3.3. The calculation should take around 5 to 6 minutes.
9.3.13 Visualisation of results in ParaView
The results can be visualized using ParaView. Figure 9.19 shows the evolution of the deviatoric strain
when the impacting body is rigid in the right, and elastic (from previous model) in the left. Notice the
similarities in the deviatoric strain contour plot.
9.3.14 Visualisation of text output files
A material point centered in the impacting body is tracked similarly as in subsection 9.2.15. The compar-
ison between the elastic and rigid body displacement is shown in Figure 9.20. It can be observed that
both solutions are similar. Only a small difference in the maximum displacement in the last part of the
simulation is observed.
Impact problem 197

Figure 9.18: Activate the contact in the calculation parameters.

9.4 Variation: Simulation in 3D cylindrical axisymmetric conditions


In this section, a variation is proposed taking into account axisymmetric conditions. Note that in this case,
the impacting body represents a free fall penetrometer (Figure 9.1b). In this case, it is recommended to
start a new model from the beginning in order to avoid conflicting assignations between 2D and 3D models.
The following instructions will guide you towards the construction of the axisymmetric case making use of
the 3D cylindrical axisymmetric condition.
9.4.1 Starting pre-processor
Start the GiD pre-processor following the steps as described in Section 3.2.1. Save the project in the
desired directory on the hard disk with an appropriate name (e.g. "sliceimpact").
9.4.2 Defining geometry
Start defining the same geometry defined in section (9.2.2). You can use table 9.3 to identify the corner
coordinates of the 2D section. Then, a rotation of the 2D section is required to create a 3D axisymmetric
geometry, representing a slice of the problem. Follow the next steps:
3.1 Select the Utilities menu on the menu bar in GID;
3.2 Click on the "Copy" option as shown in figure 9.21.
3.3 The "Copy" dialog box will pop up (figure 9.21).
3.4 Change "Entities types" to "Surfaces" (9.21).
3.5 Change "Transformation" to "Rotation" (9.21).
3.6 In the "Angle" text box write 20. This is the angle of the cylinder slice.
3.7 In the "Second point" box, write y= 1 as shown in figure 9.21. This will indicate the axis of rotation
along the y axis at x=0 and z=0. The code will require that ALL the 3D cylindrical models are rotated
198 Anura3D MPM Software, Tutorial Manual

Figure 9.19: Evolution of the deviatoric strain for the solution with rigid body and elastic material.

along this axis.


3.8 Change the "Do extrude" option to "Volumes" as shown in figure 9.21.
3.9 Click on the "select" buttom and chose all the surfaces of the actual geometry.
3.10 Finally, click on "Finish".
A 20° slice of a 3D cylindrical model is generated as shown in figure 9.22.
Impact problem 199

Figure 9.20: Comparison between the vertical displacement vs. time for i) the elastic and ii) rigid
impacting wall.

Figure 9.22: 20° slice of a cylinder to simulate an impact problem.


9.4.3 Defining problem dimensions
Click on the "Units and dimensions" dropdown menu to change the problem dimensions to "3D Axisym-
metric" as shown in Figure 9.23.
9.4.4 Defining material properties
Similarly as in section 9.2.3, assign the materials to the corresponding volumes.
9.4.5 Specifying material points
Assign one (1) material point to all the material volumes (i.e. impacting body and soil) (consider section
9.2.4 for reference). Note that in section 9.2.4 three (3) points were assigned to the soil instead. The
reason for reducing the number of material points is to minimize the computational resources required to
solve this tutorial exercise. Consider more material points and mesh refinement if more accurate results
are required.
200 Anura3D MPM Software, Tutorial Manual

Figure 9.21: Copy Dialog box setup to create a 20° cylindrical slice.

9.4.6 Defining boundary conditions


Note that for cylindrical coordinates, the x, y, and z directions are replaced by the r, y, and θ respectively.
Applying fixities
Similarly as in section 9.2.6, only the solid phase needs to be considered. In order to avoid inconsistent
fixities on the intersections of the geometrical items, the fixities will be assigned to the surfaces, boundary
lines, and corner points as indicated in figure 9.24.
⋄ Surface fixities
3.1 Lateral sides: normally fixed (θ direction only);
3.2 Curved side: normally and tangentially fixed (r and θ direction);
3.3 Top side: vertical fixity in y-direction on the top surface;
3.4 Bottom side: vertical fixities in y-direction on the bottom surface;
3.5 Check if the fixities are assigned correctly, see Figure 9.24a;

Figure 9.23: Setting up the dimensions of the problem.


Impact problem 201

⋄ Line fixities
3.1 Vertical lines: normally and tangentially fixed (r and θ direction);
3.2 Curved lines: fully fixed (all directions);
3.3 Top lines: normally fixed (y and θ direction);
3.4 Bottom side: normally fixed (y and θ direction);
3.5 Check if the fixities are assigned correctly, see Figure 9.24b;
⋄ Point fixities
3.1 Corner points: fully fixed (all directions);
3.2 Check if the fixities are assigned correctly, see Figure 9.24c;

Figure 9.24: Solid fixities of the impact problem in GiD for a 3D cylindrical problem, a) surface
fixities, b) line fixities, c) point fixities.
9.4.7 Defining initial velocity on material points
Similarly as in section 9.2.7, assign the velocities to the volume representing the cone. The velocity to be
assigned is –5m/s on the y-direction.
9.4.8 Defining a surface for computation of reaction forces
Follow the instructions explained in sections 8.2.8 and 9.2.8 to assign the reaction at surfaces. Select two
(2) surfaces: the tip and the shaft.
9.4.9 Defining the moving mesh
The moving mesh is set in the same fashion as demonstrated in section 9.2.9. Note that for the 3D
cylindrical case, the compressive, and moving mesh areas are defined by 6 points each.
9.4.10 Creating mesh
An unstructured mesh is used for this example. To generate the mesh follow the steps given in Section
6.2.7. For this example set the mean element size to "0.1". The mesh should look as shown in Figure
9.25. Note that the bigger mesh is selected only to reduce the computational resources required to follow
this tutorial. Finer meshes are recommended to obtain more accurate results in the area of interest.
202 Anura3D MPM Software, Tutorial Manual

Figure 9.25: Computational mesh of the impact problem in 3D cylindrical coordinates.

9.4.11 Calculation parameters


The calculation parameters are identical to those specified in section 9.2.11.
9.4.12 Performing calculation in Anura3D
The calculation can be performed as explained in Section 3.3. This simulation should take around 5-6
min.
9.4.13 Visualisation of results in ParaView
The results can be visualized using ParaView. Figure 9.26 shows the evolution of the deviatoric strain.
Note that the results are different from the plane strain condition because the mesh is coarser, and the
problem is simulating a cone impacting body (Figure 9.1b) instead of an impacting wall (Figure 9.1a).
Impact problem 203

Figure 9.26: Evolution of the deviatoric strain.


9.5 Other variations
Other variations proposed for the impact problem are listed below:
3.1 Examine the influence of the material properties on the penetration depth.
3.2 Examine the importance of the impacting body weight on the penetration depth.
204 Anura3D MPM Software, Tutorial Manual
10 Excavation
Authors: Alexander Chmelnizkij; Angela Saade; Francesc Mirada; Alba Yerro; Gaia Di Carluccio; Nuria
Pinyol; Bruno Zuada; James Fern; John Murphy; Francesca Ceccato
In the following tutorial, two examples of the excavation feature implemented in Anura3D are described.
First, a 3D column of soil is considered and four volumes of soil are removed progressively from the
top of the column. Two variations of the problem are proposed considering different material models
(Linear elasticity and Mohr-Coulomb). The second example looks at the stability of 2D supported vertical
excavations in elasto-plastic material. Two different approaches to simulate the failure mechanism are
considered. The first approach continuously removes material points as they rise inside the excavation.
In the second approach, after the removal of MPs, soil is allowed to move into and accumulate in the
excavated zone.
10.1 3D Column excavation
10.1.1 Problem definition
The dimensions of the soil column are given in Figure 10.1. Five equal volumes of soil are considered and
an empty space is added on top of the column to allow material points to move freely. The dimensions
are given in Table 10.1. Note that each excavation depth is H/5.

Figure 10.1: Definition of the excavation problem including empty space at the top.

Table 10.1: Dimensions of the column for the excavation problem.

Column height H(m) Column width W(m) Depth D(m) Box Height (m)
5 1 0.1 5.5

10.1.2 Creating input data


The geometry, boundary conditions, material properties and mesh are defined using GiD pre-processor.
The calculation options are defined in the CPS file. Both follow the same procedure as described in
Section 3.2. Only variations to previous examples are highlighted in the following sections.
10.1.2.1 Starting pre-processor
Start the GiD pre-processor following the steps as described in Section 3.2.1. Save the project in the
desired directory on the hard disk with an appropriate name (e.g. "columnexcavation").
206 Anura3D MPM Software, Tutorial Manual

Table 10.2: Material parameters of the soil for the excavation problem.

Material Column
material type dry material
initial porosity 0.25
density solid (kg/m3 ) 2650
K0-value 0.5*
material model solid 1-Linear Elasticity
2-Mohr-Coulomb
Young modulus (kPa) 20000
Poisson ratio (-) 0.20
cohesion (kPa) 5**
effective friction angle (◦ ) 30**
dilatancy angle (◦ ) 0
tensile strength (kPa) 0

(*) not used, (**) specific to Mohr-Coulomb material model

10.1.2.2 Defining geometry


Create the geometry following the steps as described in Section 3.2.2 with dimensions as given in Table
10.1 of the problem description. Note that an entity containing empty elements should be defined at the
top side of the column to allow for free movement of material points.
The geometry is created by defining 6 rectangles (in 2D) which will be discretised by a semi-structured
mesh. The geometry should look like shown in Figure 10.2. Note the division into 6 prismatic volumes.

Figure 10.2: Geometry of the column excavation problem including empty entity at the top.

An index is automatically assigned to each volumes in GiD. This index cannot be changed and is needed
for the excavation process. The labels can be obtained from the <View> <Label> <All in> <Volumes>
menu as shown Figure 10.3.
Excavation 207

Figure 10.3: Labels for the volumes in GiD.


10.1.2.3 Defining material properties
Define the material properties following steps as described in Section 3.2.4. In this example, a linear
elastic model is considered. Enter the material parameters according to Table 10.2 as shown in Figure
10.4.

Figure 10.4: Defining material properties for the column excavation problem, linear elastic
model.
208 Anura3D MPM Software, Tutorial Manual

10.1.2.4 Specifying material points


Specify the initial material point distribution following instructions in Section 3.2.5. Choose 4 material
points per element for the column. Check if the material and the number of material points are assigned
correctly (Figure 10.5).

Figure 10.5: Specification of the material and the number of material points per element for the
column excavation problem.
10.1.2.5 Defining boundary conditions
Define the boundary conditions following the steps given below:
3.1 Left side at x=0.0: horizontal fixity in x-direction on the 6 surfaces
3.2 Right side at x=1.0: horizontal fixity in x-direction on the 6 surfaces
3.3 Top side at y=5.5: vertical fixity in y-direction
3.4 Bottom side at y=0: fixities in x- and y- directions
3.5 Front and back sides: horizontal fixities in z-direction
The assigned fixities of the column excavation problem should look like shown in Figure 10.6.
Excavation 209

Figure 10.6: Fixities of the column excavation problem in GiD.


10.1.2.6 Creating mesh
For this example, a semi-structured mesh in z-direction is used with an element size of 0.1m. To generate
the mesh follow the steps in Section 3.2.7. The number of divisions in the structured direction to assign to
semi-structured volumes is 1.
10.1.2.7 Defining excavation steps
Anura3D provides an excavation tool which allows to simulate soil excavation in stages by defining the
range of load steps in which the material points belonging to a certain volume have to be removed. In this
example, the first load step consists of applying gravity load. The second load step includes the excavation
of the first volume of soil, which is the volume no. 5 according to the labelling in Figure 10.2. Therefore,
in order to define the excavation of volume no. 5, the first step of the excavation sequence should be set
equal to 2. No soil is allowed to move into volume no. 5 during the entire process of excavation. Thus, the
last step in the excavation sequence for volume no. 5 should be set equal to 6 (which corresponds to the
final load step). The definition of the excavation sequence for volume no. 5 is shown in Figure 10.7.

Figure 10.7: Definition of an excavation step.


210 Anura3D MPM Software, Tutorial Manual

The assigned excavation step for volume no. 5 should look like shown in Figure 10.8

Figure 10.8: Assigned excavation for volume no. 5.

The next volume to be excavated is volume no. 4. The first step of the excavation sequence would be 3
whereas the last step would be 6. Proceed similarly to define and assign the excavation steps for volumes
4, 3 and 2. The final setup of the excavation process should look like shown in Figure 10.9. Once defined
the excavation steps, the mesh should be re-generated.
Excavation 211

Figure 10.9: Assigned excavation steps.


10.1.2.8 Initialisation of calculation data
Only the calculation parameters required to initialise the first load step calculation are added in GiD.
Calculation parameters for load steps after the first will be changed in the CPS file.
Computational method
The computational method used in this example is the "MPM - mixed integration".
Calculation step data
The first calculation in CPS_001 runs a quasi-static calculation to initialize stresses in the soil. This
initial stage occurs in one Anura3D load step. The end of each calculation step is determined by the
convergence criteria. A Courant number of 0.98 is advised to ensure the stability of the solution.
Load multipliers - Gravity Load
The full gravity load is applied from the start of the calculation and held constant for the quasi-static load
step. Therefore either applygravityload – linear or applygravityload – stepwise can be used. Set the gravity
multiplier initial and final to 1.0.
Quasi-static convergence
The determination of the end of each calculation step is determined by convergence criteria, which corre-
sponds to a quasi-static equilibrium condition.
Homogeneous local damping
In order to converge to the quasi-static solution an overall local damping coefficient for all active elements
of 0.75 is applied.
Output data
One material point located at the bottom of the column will be selected for which an additional output file
will be created. Section 3.4.7 explains how to determine the ID number of a material point.
To define the initial calculation parameters follow the instructions given in Section 3.2.8. For this example,
enter the values as given below:
⋄ Select "COMPUTATION METHOD" as "MPM - mixed integration" from the drop down menu
⋄ Set "number of calculation steps [-]" as "1"
⋄ Set "time per calculation step [s]" as "0.5". Note that any value except 0.0 can be entered since the
quasi-static convergence criterion is used
⋄ Set "GRAVITY LOADING" as "apply gravity load - stepwise" from the drop down menu
212 Anura3D MPM Software, Tutorial Manual

⋄ Set "gravity multiplier initial [-]" to "1.0"


⋄ Set "gravity multiplier final [-]" to "1.0"
⋄ Set "QUASI-STATIC CONVERGENCE" as "apply convergence criteria"
⋄ Set "HOMOGENEOUS LOCAL DAMPING" as "apply homogeneous local damping" from the drop
down menu
⋄ Set "Local damping coefficient" to "0.75"
⋄ Set "OUTPUT DATA" for "number of material points" to "1"
⋄ Set "material point #1" to "1228"
All other calculation parameters can be kept at their default values.
10.1.2.9 Generating input files
After the geometry, material properties, boundary conditions, excavation steps and calculation parameters
are defined and the mesh is generated the input files, i.e. GOM and CPS, for Anura3D have to be created
as described in Section 3.2.9.
The generated input files columnexcavation.GOM and columnexcavation.CPS can be found in the
folder columnexcavation.A3D in the directory which was specified earlier as shown in Section 10.1.2.1.
10.1.3 Performing calculation in Anura3D
The Anura3D calculation can be started following instructions described in Section 3.3.
10.1.3.1 Stage 1: Gravity loading
Stage 1 of the calculation starts and output is generated in the "Command Line" window indicating the
progress of the calculation. Input errors and calculation errors are displayed in the window as well. The
output files are generated and stored in the project directory columnexcavation.A3D.
10.1.3.2 Stage 2 to 6: Excavation stages
The last CPS file that was generated by the previous load step has to be adapted. Increase the number
of load steps to 6 (to include the 4 excavation steps and a final stage). Continue the calculation in the
same project directory following instructions described in Section 3.3. The five steps can be calculated
and the progress can be followed in the command line window.
10.1.4 Visualisation of results in ParaView
The results for the dry soil column with linear elastic constitutive model are presented for the end of the
gravity loading stage and at the end of each excavation stage. Effective stresses in y- and z-direction are
shown for each stage in Figures 10.10 and 10.11.
Excavation 213

a) b) c)

d) e)

Figure 10.10: Vertical effective stresses σyy in [kPa]: a) after gravity loading, b) after excavating
volume 5, c) after excavating volume 4, d) after excavating volume 3, e) after
excavating volume 2.
214 Anura3D MPM Software, Tutorial Manual

a)

b)

c)

d)

e)

Figure 10.11: Horizontal effective stresses σzz in [kPa]: a) after gravity loading, b) after excavat-
ing volume 5, c) after excavating volume 4, d) after excavating volume 3, e) after
excavating volume 2.
10.1.5 Visualisation of text output files
Following the instructions from Section 3.6, further results can be plotted for a material point located at
the bottom of the column which is shown in Figure 10.12.
Excavation 215

Figure 10.12: Location considered for results which has a material point ID equal to 1228 and
coordinates (0.268; 0.1819; -0.01382).

Figure 10.13 presents the stress–strain curve and shows that the behaviour is completely linear elastic
when loading and unloading. The theoretical oedometric modulus is obtained using the following equation:

1–ν
E0 = E (10.1)
(1 + ν )(1 – 2ν )

Figure 10.13: Stress–strain curve for linear elastic material.

The stress decrease in time is shown in Figure 10.14.


216 Anura3D MPM Software, Tutorial Manual

Figure 10.14: Stress–time curve for linear elastic material


10.1.6 Excavation with Mohr-Coulomb material
In this section, a similar analysis is carried out using the same geometry and same boundary conditions.
Now, the Mohr-Coulomb model is adopted instead of the linear elastic model. Enter the soil parameters
according to Table 10.2 and as shown in Figure 10.15.

Figure 10.15: Defining material properties for the column excavation problem, Mohr-Coulomb
model

The results for the dry soil column with Mohr-Coulomb constitutive model are presented for the end of the
gravity loading and the end of each excavation stage in Figures 10.16 and 10.17.
Excavation 217

a) b) c)

d) e)

Figure 10.16: Vertical effective stresses σyy in [kPa]: a) after gravity loading, b) after excavating
volume 5, c) after excavating volume 4, d) after excavating volume 3, e) after
excavating volume 2.
218 Anura3D MPM Software, Tutorial Manual

a)

b)

c)

d)

e)

Figure 10.17: Horizontal effective stresses σzz in [kPa]: a) after gravity loading, b) after excavat-
ing volume 5, c) after excavating volume 4, d) after excavating volume 3, e) after
excavating volume 2.

Figure 10.18 presents the stress–stain curve for the Mohr-Coulomb model. The theoretical oedometric
modulus is also plotted. The yield criteria is reached and plastic deformations are accumulated.
Excavation 219

Figure 10.18: Stress–strain curve for Mohr-Coulomb material.

The stress decrease in time is shown in Figure 10.19.

Figure 10.19: Stress–time curve for Mohr-Coulomb material.


220 Anura3D MPM Software, Tutorial Manual

10.2 2D Strutted excavation


10.2.1 Problem definition
The problem is simulated in 2D-plane strain conditions. The geometry of the problem after the excavation
process is given in Figure 10.20. The dimensions of the model are given in Table 10.3. The analysis is
conducted in undrained total stresses.
The calculation will be performed in two stages:
(1) stress initialisation with quasi-static gravity loading
(2) excavation process by consecutively removing soil surfaces of 1m height.

Figure 10.20: Definition of strutted excavation problem.

Table 10.3: Dimensions of strutted excavation.

Box height Box width Soil height Excavation width Excavation depth
D/B ratio
H [m] W [m] S [m] B [m] D [m]
2:1 4.5 9 4 1 2

10.2.2 Creating input data


The geometry, boundary conditions, material properties and mesh are defined using GiD pre-processor.
The calculation options are defined in the CPS file. Both follow the same procedure as described in
Section 3.2. Only variations to previous examples are highlighted in the following sections.
10.2.2.1 Starting pre-processor
Start the GiD pre-processor following the steps as described in Section 3.2.1. Save the project in the
desired directory on the hard disk with an appropriate name (e.g. “struttedexcavation").
10.2.2.2 Defining geometry
Create the geometry following the steps as described in Section 3.2.2 with dimensions as given in Table
10.3. As a reference the key coordinates indicated in Figure 10.21 and Table 10.4 can be used. As in the
previous example, an entity containing empty elements should be defined at the top side of the soil model
to allow for free movement of material points. The geometry should look like shown in Figure 10.22. An
index is automatically assigned to each surfaces in GiD. This index cannot be changed and is needed for
the excavation process.
10.2.2.3 Defining material properties
Define the material properties following the steps as described in Section 3.2.4. In this example, the soil
is assumed to be a purely cohesive material and modelled with a Tresca [? ] failure criterion; that is a
Mohr-Coulomb failure criterion in which friction (φ) and dilatancy (ψ ) angles are 0 and the cohesion is
equal to the shear strength. Enter the material parameters according to Table 10.5 as shown in Figure
10.23. Finally, assign the material to the soil surfaces.
Excavation 221

Figure 10.21: Geometry of strutted excavation problem. Key points are indicated as given in
Table 10.4

Table 10.4: Key coordinates of the strutted excavation problem.

Point X coordinate [m] Y coordinate [m]


P1 0 0
P2 9 0
P3 9 4
P4 9 4.5
P5 0 4.5
P6 0 4
P7 4 4
P8 4 3
P9 4 2
P10 5 2
P11 5 3
P12 5 4

Figure 10.22: Geometry of strutted excavation problem including labelling of excavated surfaces.
222 Anura3D MPM Software, Tutorial Manual

Table 10.5: Material parameters of the soil.

Material Soil
material type saturated material-undrained total stress
initial porosity (-) 0.2
density solid (kg/m3 ) 2650
density liquid (kg/m3 ) 1000
K0-value 0.0*
material model solid Mohr-Coulomb
Poisson ratio (-) 0.49
Young modulus (kPa) 10000
cohesion (kPa) 5.5
friction angle(◦ ) 0
dilatancy angle(◦ ) 0

(*) not used

Figure 10.23: Defining material properties for the strutted excavation problem, Mohr-Coulomb
model.
Excavation 223

10.2.2.4 Specifying material points


Specify the initial material point distribution following instructions from Section 3.2.5. Choose 3 material
points per element. Check if the material and the material points are assigned correctly (Figure 10.24).

Figure 10.24: Specification of the material and the number of material points per element for the
strutted excavation problem.
10.2.2.5 Defining boundary conditions
Define the boundary conditions for solid phase following the steps given below. Note that the hypothesis
of strutted excavation is ensured by constraining horizontal displacements at the vertical contours of the
excavation.
3.1 Left side at x=0.0: horizontal fixity in x-direction
3.2 Right side at x=9.0: horizontal fixity in x-direction
3.3 Top side at y=4.5: vertical fixity in y-direction
3.4 Bottom side at y=0: full fixities in x- and y- directions
3.5 Left side at x=4.0 and right side at x=5.0 of excavation: horizontal fixity in x-direction
The assigned fixities of the column excavation problem should look like shown in Figure 10.25.

Figure 10.25: Fixities of the strutted excavation problem in GiD.


10.2.2.6 Creating mesh
For this example, an unstructured mesh with an element size of 0.25m is used. To generate the mesh
follow the steps in Section 3.2.7.
224 Anura3D MPM Software, Tutorial Manual

10.2.2.7 Defining excavation steps


The first 5 load steps would consist of applying gravity load. Then the excavation process is simulated
in two stages by removing the material points belonging to volumes of 1 m height. They are removed
immediately at the beginning of each excavation stage and then enough time is left in order to reach the
equilibrium.
The sixth load step would include the excavation of the first volume of soil, which is the volume no. 1
according to the labelling in Figure 10.22. Therefore, the first step of the excavation sequence of volume
no. 1 should be set equal to 6.
The two approaches proposed differ just for the definition of the excavation steps.
Approach 1
In the first approach no soil is allowed to move into the excavation and the MPs are continuously removed
as they rise inside it. The last step in the excavation sequence for volume no. 1 should be set equal to 75
(which corresponds to the final load step). The definition of the excavation sequence for volume no. 1 is
shown in Figure 10.26. The next volume to be excavated is volume no. 2. Since the excavation of volume
no. 1 is performed in 10 calculation steps, the first step of the excavation sequence of volume no. 2 is set
equal to 16 whereas the last step would be 75. The final setup of the excavation process should look like
shown in Figure 10.27(a).
Approach 2
In the second approach, once the excavation of volumes no. 1 and 2 ends, soil is allowed to move and
accumulate into the excavated zone. Since the second excavation is carried out in the load step 16, the
last step in the excavation sequence for volume no. 1 and 2 should be set equal to 16. The final setup of
the excavation process should look like shown in Figure 10.27(b).
Once defined the excavation steps, the mesh should be re-generated.

Figure 10.26: Definition of the first excavation step for Approach 1.


Excavation 225

(a)

(b)

Figure 10.27: Assigned excavation steps: (a) Approach 1, (b) Approach 2.


10.2.2.8 Initialisation of calculation data
In GiD, only the calculation parameters required to initialise the calculation are introduced, or in other
terms those corresponding to stage 1.
Computational method
The computational method used in this example is the "MPM - mixed integration".
Calculation step data
The initial stage corresponding to gravity loading is carried out in five calculation steps. The end of each
calculation step is determined by the convergence criteria. A Courant number of 0.98 is advised to ensure
the stability of the solution.
Load multipliers
The gravity load is applied in five steps. Therefore set the multipliers for gravity loading as 0.0 (initial) and
1.0 (final value).
Quasi-static convergence
The determination of the end of each calculation step is determined by convergence criteria, which corre-
sponds to a quasi-static equilibrium condition.
Homogeneous local damping
In order to converge to the quasi-static solution an overall local damping coefficient for all active elements
of 0.75 is applied.
Strain smoothing
The strain smoothing algorithm will be used to minimise kinematic locking, which might occur for volumet-
ric strains.
To define the initial calculation parameters follow the instructions given in Section 3.2.8. For this example,
enter the values as given below:
⋄ Set "COMPUTATION METHOD" as "MPM - mixed integration" from the drop down menu
226 Anura3D MPM Software, Tutorial Manual

⋄ Set "number of calculation steps [-]" as "5"


⋄ Set "time per calculation step [s]" as "0.5". Note that any value except 0.0 can be entered since, in the
first stage, the quasi-static convergence criterion is used
⋄ Set "GRAVITY LOADING" as "apply gravity load - stepwise" from the drop down menu
⋄ Set "gravity multiplier initial [-]" to "0.0"
⋄ Set "gravity multiplier final [-]" to "1.0"
⋄ Set "QUASI-STATIC CONVERGENCE" as "apply convergence criteria"
⋄ Set "HOMOGENEOUS LOCAL DAMPING" as "apply homogeneous local damping" from the drop
down menu
⋄ Set "Local damping coefficient" to "0.75"
⋄ Set "STRAIN SMOOTHING" as "apply strain smoothing" from the drop down menu
All other calculation parameters can be kept at their default values.
10.2.2.9 Generating input files
After the geometry, material properties, boundary conditions, excavation steps and calculation param-
eters are defined and the mesh is generated the input files, i.e. GOM and CPS, for Anura3D have to
be created as described in Section 3.2.9. The generated input files struttedexcavation.GOM and strut-
tedexcavation.CPS can be found in the folder struttedexcavation.A3D in the directory which was specified
earlier as shown in Section 10.2.2.1.
10.2.3 Performing calculation in Anura3D
10.2.3.1 Stage 1: Gravity loading
Stage 1 of the calculation starts and output is generated in the "Command Line" window indicating the
progress of the calculation. Any possible input errors and calculation errors are displayed in the window
as well. The output files are generated and stored in the project directory struttedexcavation.A3D.
10.2.3.2 Stage 2: Excavation stages
The last CPS file that was generated by the previous load step has to be adapted. Increase the number
of load steps to 75 (to include the 2 excavations and a final stage). The time per load step is set as 0.15
seconds. Therefore set:

2 $$NUMBER_OF_LOADSTEPS
3 75

4 $$TIME_PER_LOADSTEP
5 0.15

Switch off the convergence to the quasi-static equilibrium as now the full dynamic behaviour of the column
will be analysed. Therefore:

24 $$QUASISTATIC_CONVERGENCE
25 0

For the same reason also reduce the local damping coefficient to 5% and set:

34 $$HOMOGENEOUS_LOCAL_DAMPING
35 1 0.05

All other calculation options in this example should be kept with the provided default values. Continue the
calculation in the same project directory following instructions described in Section 3.3. The next 70 steps
can be calculated and the progress can be followed in the command line window.
Excavation 227

10.2.4 Visualisation of results in ParaView


The results for the strutted excavation problem are presented for the end of the gravity loading stage and
for the end of the simulation. Vertical effective stresses in y-direction at the end of gravity loading are
shown in Figure 10.28.

Figure 10.28: Vertical effective stresses σyy [kPa] after gravity loading.

Note: When the material is defined as "saturated material-undrained total stress", the effective
stresses that are visualised in ParaView are equal to the total stresses.
228 Anura3D MPM Software, Tutorial Manual

Approach 1
Total displacements in x- and y-directions at the end of the simulation for Approach 1 are shown in Figure
10.29.

(a)

(b)

Figure 10.29: (a) Horizontal displacements [m], (b) Vertical displacements [m] (Approach 1).
Excavation 229

Approach 2
Total displacements in x- and y-directions at the end of the simulation for Approach 2 are shown in Figure
10.30.

(a)

(b)

Figure 10.30: (a) Horizontal displacements [m], (b) Vertical displacements [m] (Approach 2).

The results of the simulation carried out with Approach 2, in which the material is allowed to accumulate
into the excavation, show that total displacements are significantly lower compared with Approach 1. This
behavior can be explained considering that the accumulation of soil changes the geometry of the problem,
leading earlier to a new stable configuration.
More details about the MPM simulation of strutted excavation in clay and its comparison with solutions
reported in the literature, can be found in Chapter 15 of "The Material Point Method for Geotechnical
Engineering: A Practical Guide" by ? ]
230 Anura3D MPM Software, Tutorial Manual
11 Construction
Authors: Luís Ángel Avilés; Gaia Di Carluccio; Mateu Maglia; Núria Pinyol
In the following tutorial, an example of the construction feature implemented in Anura3D is described.
A 2D soil column under oedometric conditions is constructed in five layers. The column is modelled
as linear elastic, and two variations are proposed considering different values of Young’s modulus. In
the first example a Young’s modulus high enough to produce small deformation during the construction
process is considered. In the second example, a lower Young’s modulus is assigned, which would cause
more significant deformations during the construction and prevent the desired final geometry from being
achieved. In this latter case, the option to fill the elements that become empty due to deformations during
the construction stages with additional material points is activated.
11.1 2D Column construction
11.1.1 Problem definition
The dimensions of the soil column are given in Figure 11.1. Five equal layers of soil are considered and
an empty space is added on top of the column to allow material points to move freely. The dimensions
are given in Table 11.1. Note that each construction layer depth is H/5.

Figure 11.1: Definition of the construction problem including empty space at the top.

Table 11.1: Dimensions of the column for the construction problem.

Column height H(m) Column width W(m) Box Height B(m)


5 1 5.5

11.1.2 Creating input data


The geometry, boundary conditions, material properties and mesh are defined using GiD pre-processor.
Calculation options are defined in the CPS file. Both follow the same procedure as described in Section
3.2.
11.1.2.1 Starting pre-processor
Start the GiD pre-processor following the steps as described in Section 3.2.1. Save the project in the
desired directory on the hard disk with an appropriate name (e.g. "columnconstruction").
232 Anura3D MPM Software, Tutorial Manual

Table 11.2: Material parameters of the soil for the construction problem.

Material Column
material type dry material
initial porosity 0.35
density solid (kg/m3 ) 2650
K0-value 0.0*
material model solid Linear Elasticity
Young modulus (kPa) 2000
Poisson ratio (-) 0.25

(*) not used

11.1.2.2 Defining geometry


Create the geometry following the steps as described in Section 3.2.2 with dimensions as given in Table
11.1 of the problem description. Note that an entity containing empty elements should be defined at the
top of the column to allow for free movement of the material points. The geometry is created by defining
6 rectangles which will be discretised by a structured mesh. The geometry should look like that shown in
Figure 11.2.

Figure 11.2: Geometry of the column construction problem including empty entity at the top.
Construction 233

11.1.2.3 Defining material properties


Define the material properties following the steps as described in Section 3.2.4. In this example, a linear
elastic model is considered. Enter the material parameters according to Table 11.2 as shown in Figure
11.3.

Figure 11.3: Defining material properties for the column construction problem.
11.1.2.4 Specifying material points
Specify the initial material point distribution following instructions in Section 3.2.5. Choose 3 material
points per element for the column. Check if the material and the number of material points are assigned
correctly (Figure 11.4).

Figure 11.4: Specification of the material and the number of material points per element for the
column construction problem.
234 Anura3D MPM Software, Tutorial Manual

11.1.2.5 Defining boundary conditions


Define the boundary conditions following the steps given below:
⋄ Left side at x=0.0: horizontal fixity in x-direction on the 6 lines
⋄ Right side at x=1.0: horizontal fixity in x-direction on the 6 lines
⋄ Top side at y=5.5: vertical fixity in y-direction
⋄ Bottom side at y=0: fixities in x- and y- directions
The assigned fixities of the column excavation problem should look like that shown in Figure 11.5.

Figure 11.5: Solid fixities of the column construction problem.


11.1.2.6 Defining construction steps
Anura3D provides a construction tool which allows to simulate soil construction in stages by defining the
range of load steps in which the material points have to be constructed in a certain area. In this example,
the construction process is simulated in five stages by adding the material points to surfaces of 1 m height.
Each construction stage is performed in two load steps. The material points are added during the first
load step and then enough time is left in order to reach the equilibrium.
Therefore, in order to define the construction of the lowest layer, set the first step of the construction
sequence as 1 and last step as 2. Then, assign the construction condition to the lowest surface. The
following soil layers will be constructed sequentially from bottom to top. The final setup of the construction
process and the correct assignment are shown in Figure 11.6.
Construction 235

Figure 11.6: Definition of construction stages.

Figure 11.7: Construction stages assignment to geometry.


236 Anura3D MPM Software, Tutorial Manual

11.1.2.7 Creating mesh


For this example, a structured mesh is used with an element size of 0.1m. To generate the mesh follow
the steps in Section 3.2.7.

Figure 11.8: Mesh of the column construction problem.


11.1.2.8 Initialisation of calculation data
Computational method
The computational method used in this example is the "MPM - mixed integration".
Calculation step data
The computation will be carried out in 10 steps of 10s each.
Load multipliers - Gravity Load
The full gravity load is applied in the first load step of each construction stage. Therefore, select Applygravityload–
step. Set the gravity multiplier initial and final to 1.0.
Homogeneous local damping
An overall local damping coefficient for all active elements of 0.05 is applied.
Output data
One material point located at the bottom of the column will be selected for which an additional output file
will be created. Section 3.4.7 explains how to determine the ID number of a material point.
To define the initial calculation parameters follow the instructions given in Section 3.2.8. For this example,
enter the values as given below:
⋄ Select "COMPUTATION METHOD" as "MPM - mixed integration" from the drop down menu
⋄ Set "number of calculation steps [-]" as "10"
⋄ Set "time per calculation step [s]" as "10".
⋄ Set "GRAVITY LOADING" as "apply gravity load - step" from the drop down menu
⋄ Set "gravity multiplier initial [-]" to "1.0"
⋄ Set "gravity multiplier final [-]" to "1.0"
⋄ Set "HOMOGENEOUS LOCAL DAMPING" as "apply homogeneous local damping"
⋄ Set "Local damping coefficient" to "0.05"
⋄ Set "OUTPUT DATA" for "number of material points" to "1"
Construction 237

⋄ Set "material point #1" to "35"


All other calculation parameters can be kept at their default values.
11.1.2.9 Generating input files
After the geometry, material properties, boundary conditions, construction steps, calculation parameters
and the mesh are defined, the input files (i.e. GOM and CPS) have to be created as described in Section
3.2.9.
The generated input files columnconstruction.GOM and columnconstruction.CPS can be found in
the folder columnconstruction.A3D in the directory which was specified earlier as shown in Section
11.1.2.1.
11.1.3 Performing calculation in Anura3D
The Anura3D calculation can be started following instructions described in Section 3.3.
11.1.4 Visualisation of results in ParaView
The results for the dry soil column with linear elastic constitutive model are presented at the end of each
construction stage. Vertical effective stresses are shown in Figure 11.9

a) b) c)

d) e)

Figure 11.9: Vertical effective stresses σyy in [kPa]: a) after construction of layer 1 , b) after
construction of layer 2, c) after construction of layer 3, d) after construction of layer
4, e) after construction of layer 5.
238 Anura3D MPM Software, Tutorial Manual

11.1.5 Visualisation of text output files


Following the instructions from Section 3.6, further results can be plotted for a material point located at
the bottom of the column which is indicated in Figure 11.10.

Figure 11.10: Location considered for results which has a material point ID equal to 36.

Figure 11.11 presents the stress–strain curve and shows that the behaviour is completely linear elastic
when loading and unloading. The theoretical oedometric modulus is obtained using the following equation:

1–ν
E0 = E (11.1)
(1 + ν )(1 – 2ν )

Figure 11.11: Stress–strain curve for linear elastic material.


11.1.6 Variation: filling empty elements during construction
A further simulation is performed using the same geometry and same boundary conditions but considering
a lower value of Young’s modulus equal to 500 kPa. Table 11.3 shows the new material properties of the
constructed soil column. In this example, the elements that become empty due to deformation during the
construction process are filled with additional material points to match the desired geometry. This option
Construction 239

can be activated in GiD pre-processor as indicated in Figure 11.12. In order to apply this tool throughout
the entire construction process, the last load step of each construction stage should be set equal to 10,
which corresponds to the final load step of the simulation (Figure 11.12).

Table 11.3: Material parameters of the soil for the construction problem with filling of empty ele-
ments.

Material Column
material type dry material
initial porosity 0.35
density solid (kg/m3 ) 2650
K0-value 0.5*
material model solid Linear Elasticity
Young modulus (kPa) 500
Poisson ratio (-) 0.25

(*) not used

Figure 11.12: Activate the option to fill empty elements.


240 Anura3D MPM Software, Tutorial Manual

11.1.6.1 Visualisation of results in ParaView


Figure 11.13 show the results in terms of vertical effective stress distribution calculated at the end of the
simulation. The results are also compared to those obtained without filling empty elements. The increment
of weight due to the refill is observed in terms of vertical stresses.

a) b)

Figure 11.13: Vertical effective stresses σyy in [kPa]: a) without refill , b) with refill
12 Submerged slope collapse
Authors: Francesca Ceccato; Alba Yerro; Luis Angel Aviles
This tutorial explains how to simulate the collapse of a submerged slope induced by an increase of pore
pressure at the bottom in Anura3D . The model is inspired by the simulation of an experimental test
published in [? ]. A small scale submerged slope is simulated in 2D-plane strain conditions applying the
fully coupled two-phase formulation (see Chapter 1 of [? ]). In the first load step, only gravity is applied
in order to initialise the stresses. Then a liquid pressure is applied at the bottom of the slope for 0.05s,
which decreases the effective stress, thus inducing the failure of the slope. Finally, the applied pressure
is switched off and the slope stabilizes.
One particularity of this problem is that the SUBMERGED CALCULATION option is used, which means
that the gravity load of the liquid phase is neglected and the submerged weight of the mixture is considered
for the solid. As a result, the pore pressures calculated in Anura3D are, in fact, the excess of pore
pressures relative to the hydrostatic.
12.1 Problem definition
The geometry and the dimensions of the problem are given in Figure 12.1. The soil is modeled with the
Mohr-Coulomb model with the properties given in Table 12.1.

Table 12.1: Material parameters of the soil.

material soil
material type saturated material - fully coupled
initial porosity [–] 0.45
density solid [kg/m3 ] 2650
density liquid [kg/m3 ] 1000
intrinsic permeability liquid [m2 /s] 5e-11
bulk modulus liquid [kPa] 45000
dynamic viscosity liquid [kPa ∗ s] 1e-6
material model solid Mohr-Coulomb
effective Poisson ratio [–] 0.2
effective Young modulus [kPa] 5000
effective cohesion [kPa] 0
effective friction angle [◦ ] 32
dilatancy angle [◦ ] 0.0
tensile strength [kPa] 0.0

12.2 Creating input data


The geometry, discretization, material properties, and all other input parameters will be defined using the
GiD pre-pocessor. This follows a similar procedure as described in Section 3.2. Here only the differences
with respect to previous examples will be highlighted.
12.2.1 Starting pre-processor
Start the GiD pre-processor following the steps as described in Section 3.2.1. Set the problemtype as
described in Section 3.2.1 step (2). Save the project in the desired directory with an appropriate name
(e.g. "SubmergedSlope").
12.2.2 Defining geometry
To generate the geometry follow the instructions given in Section 3.2.2. As a reference, the key coordi-
nates indicated in Figure 12.2 and Table 12.2 can be used.
12.2.3 Defining material properties
Define a new material with an appropriate name (e.g. "Sand") as explained in 3.2.4. Since we are going
to perform a simulation in which solid-fluid interaction is of interest, the material type should be set to
saturated material - fully coupled. Material parameters are given in Table 12.1. Note that the bulk modulus
of the fluid is lower than the bulk modulus of the water, but it is significantly larger than the effective Young
242 Anura3D MPM Software, Tutorial Manual

Water table is above the slope (no need to be specified)

0.6
Sand

31°

0.6 1.0 0.6

0.4

Figure 12.1: Problem definition for failure of a submerged slope.

P5
P4

0.2
P8
P3

0.6

31°
P6
P7

0.4

P1 P2
0.6 1.0 0.6

Figure 12.2: Key points for definition of geometry od submerged slope.


Submerged slope collapse 243

Table 12.2: Key coordinates of the submerged slope problem.

Point X (m) Y(m)


P1 0 0
P2 2.2 0
P3 2.2 1.0
P4 2.2 1.2
P5 0 1.2
P6 0 0.4
P7 0.6 0.4
P8 1.6 1.0

Figure 12.3: Assignment of material for the submerged slope problem.

modulus in order to provide a realistic evolution of pore pressure without increasing the computational
cost.
12.2.4 Specifying material points and material type
Specify the initial material point distribution following instructions from Section 3.2.5. In this example
choose 6 material points per element and no material viscous damping and assign it to the slope.
12.2.5 Defining boundary conditions
Define the boundary conditions following the steps as described in Section 3.2.6.
Applying fixities
Since in this example a fully coupled two-phase analysis is performed, solid and liquid fixities must be
assigned. The solid displacement at the boundaries will be fixed as follows:
3.1 Left side: horizontal fixity in x-direction;
3.2 Right side: horizontal fixity in x-direction;
3.3 Top side: vertical fixity in y-direction;
3.4 Bottom side: full fixities in x- and y-direction;
3.5 Check if the x- and y- fixities are assigned correctly, see Figure 12.4;
The liquid displacement at the boundaries will be fixed as follows:
3.1 Left side: horizontal fixity in x-direction;
3.2 Right side: horizontal fixity in x-direction;
3.3 Top side: vertical fixity in y-direction;
3.4 Bottom side: vertical fixity in y-direction;
244 Anura3D MPM Software, Tutorial Manual

Figure 12.4: Solid fixities of the submerged slope problem in GiD.

Figure 12.5: Liquid fixities of the submerged slope problem in GiD.

3.5 Check if the x- and y- fixities are assigned correctly, see Figure 12.5;
Applying remove fixities
At the second load step a pressure is applied at the bottom of the slope to induce its failure, thus the fixity
applied at this boundary must be removed. Choose <Boundary conditions><Remove Fixities><Remove
Liquid fixities> click on y-direction and assign the condition to the bottom line.
Applying loading conditions
A pore pressure equal to –8kPa will be applied on the bottom line at the second load step. In this exercise
the MP close to this boundary will not move significantly and therefore the pressure can be applied on the
nodes. Choose <Boundary conditions><Loading Conditions> <Liquid Pressure> and apply –8kPa at the
nodes and <Load system> A (Fig. 12.6). Note that compression is negative in Anura3D .
Submerged slope collapse 245

Figure 12.6: Applied liquid pressure at the bottom of the slope.


12.2.6 Creating mesh
In GiD it is possible to generate meshes in a very flexible way. An unstructured mesh is used for this
example. To generate the mesh follow the steps given in Section 6.2.7. For this example set the mean
element size to "0.08". The mesh should count 936 triangular elements and 511 nodes as shown Figure
12.7.

Figure 12.7: Computational mesh of the submerged slope problem.


12.2.7 Initialisation of calculation data
The first load step is gravity loading, thus the input parameters are specific for this load step (Fig. 12.8).
Section 12.3.2 explains how to modify the CPS for the following load steps.
Computation method
The option "MPM - mixed integration" should be selected.
Calculation step data
There is only 1 step for gravity loading. The end of the step is determined by the convergence criteria. A
Courant number of 0.98 is advised to ensure the stability of the solution. Set "number of calculation steps
[-]" to "1".
Gravity data
Use standard gravity value and unit vector down: g = 9.81 ∗ (0, –1.0, 0)
Gravity load
Gravity is applied from the beginning, therefore choose Apply gravity load - stepwise and set the multipli-
246 Anura3D MPM Software, Tutorial Manual

ers for gravity loading as 1.0 (initial and final value). The gravity multipliers will be maintained constant
throughout the calculation.
Solid traction
In this example there is no solid traction, thus choose do not apply solid traction.
Liquid pressure
At the first load step liquid pressure is off, thus choose do not apply liquid pressure.
Quasi-static convergence
The end of the first load step is determined by convergence criteria, which corresponds to a quasi-static
equilibrium condition. Set the QUASI-STATIC CONVERGENCE to "apply convergence criteria". The con-
vergence criteria are the tolerated error of the kinetic energy, the tolerated error of the out-of-balance
force, or the maximum number of time steps. In general, to obtain an accurate solution it is suggested to
set the kinetic error and the force error to 0.01; however, in this example, in order to reduce the compu-
tational time, use a kinetic (energy) error and a force error of 0.04 for both the liquid and solid. Keep the
default value of 10000 for the number of maximum time steps.
Homogeneous local damping
In order to damp oscillations to reach quasi-static convergence a local damping coefficient for all active
elements of 0.7 is applied.
Strain smoothing
The strain smoothing algorithm will be switch on to minimise the kinematic locking.
K0 -procedure
The stresses in the soil will be initialised by gravity loading, thus select no K0 -procedure.
Remove Fixity
Fixities are assigned for the first load step, thus choose keep fixities.
Submerged Calculation
The slope is submerged, thus choose apply submerged calculation. The box number of initialisation steps
will appear. In this example stresses are initialised in load step 1 (gravity loading), thus put 1 in the white
space. This option is useful to accelerate the convergence to quasi static equilibrium, because the water
pressure is kept zero and the drag force is not computed in the initialization step.
Default values
All other calculation options are not used in this example and the provided default values can be kept.
Submerged slope collapse 247

Figure 12.8: Dialogue box to define calculation parameters in GiD for the submerged slope prob-
lem.
12.2.8 Generating Input Files
Once the geometry, material properties, boundary conditions, and calculation parameters are defined,
and the mesh is generated the input files for the Anura3D analysis, i.e. GOM and CPS file, have to be
created (follow steps given in Section 3.2.9).
The generated input files SubmergedSlope.GOM and SubmergedSlope.CPS_001 can be found in the
new folder SubmergedSlope.A3D, created in the directory which was specified earlier by the user (Sec.
12.2.1):

D:\..\SubmergedSlope.A3D\SubmergedSlope.GOM

D:\..\SubmergedSlope.A3D\SubmergedSlope.CPS_001

12.3 Performing calculation in Anura3D


The calculation can be performed as explained in Section 3.3.
12.3.1 Step 1: Gravity Loading
At the end of the first load step, the effective stresses are initialized and are in equilibrium with the gravity.
Note that in a submerged calculation the submerged weight of the soil-water mixture is used, i.e. γ ′ =
γsat – γliquid , and the liquid weight is neglected. The recommended way to visualise Anura3D results is by
using the Paraview software (see Sections 2.5 and 2.1.3). Instructions presented in Section 3.4 can be
followed to open and analyse the results.
Figure 12.9 shows the vertical effective stress at the end of load step 1. The liquid pressure and the body
force of the liquid are 0.
12.3.2 Step 2: Slope Failure
In this load step the failure of the slope is induced by the application of a pressure at the bottom of the
slope for a duration of 0.05s. The CPS_002 file will be modified in order to:
⋄ Perform a dynamic calculation instead of a quasi-static analysis
248 Anura3D MPM Software, Tutorial Manual

Figure 12.9: Vertical effective stress at the end of load step 1.

⋄ Remove the liquid fixity at the bottom and apply a pressure on the boundary
The second phase of the analysis will last up to load step 2 and each load step will last 0.05s:

1 $$NUMBER_OF_LOADSTEPS
2 2
3 $$TIME_PER_LOADSTEP
4 0.05

Liquid pressure is activated:

1 $$LIQUID_PRESSURE
2 step 1.0 1.0

Quasi-static convergence is deactivated and the local damping is decreased to 0.02:

1 $$QUASISTATIC_CONVERGENCE
2 0
3 ...
4 $$HOMOGENEOUS_LOCAL_DAMPING
5 1 0.02

Liquid fixity at the bottom is removed:

1 $$REMOVE_FIXITIES
2 010

The flag has 3 numbers that can be 0 (=do not remove fixity) or 1 (=remove fixity); the first number refers
to the solid phase, the second refers to the liquid phase, and the third refers to the gas phase.
Save the new .CPS_002 and re-start the calculation, which should lasts less than a minute. Once the
calculation is finished, open the results in Paraview. The pore pressures (i.e. excess of pore pressure
with respect to the hydrostatic pressure) increase at the bottom of the slope, while the vertical effective
stresses decrease (Figure 12.10), thus inducing the failure of the slope.
Submerged slope collapse 249

(a)

(b)
Figure 12.10: (a) Pore pressure and (b) vertical effective stress at the end of load step 2
12.3.3 Step 3: Slope Stabilization
At this stage, the pressure at the bottom of the slope is switched off and the liquid fixity is re-established.
The .CPS_003 file must be modified as follows:

1 $$NUMBER_OF_LOADSTEPS
2 35
3 $$TIME_PER_LOADSTEP
4 0.15

Liquid pressure is deactivated:


250 Anura3D MPM Software, Tutorial Manual

Figure 12.11: Displacement of the MPs at the end of the simulation.

1 $$LIQUID_PRESSURE
2 off 0.0 0.0

Liquid fixity at the bottom is re-established:

1 $$REMOVE_FIXITIES
2 000

Save the new .CPS_003 and re-start the calculation, which should lasts a few minutes.
Once the calculation is finished, open the results in Paraview. Since at this stage no pore pressure is
applied at the bottom, the effective stress increases again, thus increasing the soil shear strength. The
mobilized material initially accelerates, then it slows down (Fig. 12.12), and finally, the slope comes to rest
and a new deformed configuration (Fig. 12.11).
Submerged slope collapse 251

(a) Loadstep4

(b) Loadstep8

(c) Loadstep12

Figure 12.12: Velocity at MPs for different load steps.


252 Anura3D MPM Software, Tutorial Manual
13 Slope failure under transient hydraulic loads
Authors: Veronica Girardi; Gaia Di Carluccio; Francesca Ceccato; Alba Yerro
In this tutorial, two typical macro-instabilities of water retaining geostructures are simulated with the two-
phase formulation for unsaturated soils of Anura3D. The first mechanism, reported in Figure 13.1(a), is
induced by a rapid draw-down, controlled by a transient total hydraulic head condition applied on the
slope boundary. The second mechanism, reported in Figure 13.1(b), is triggered by a combination of
high saturation of the slope body with an intense rainfall. In this case, rainfall and potential seepage face
boundary conditions are applied on the slope.
Both cases are simulated in 2D-plane strain conditions. The K0 -procedure is used to expedite conver-
gence during the first load step, where gravity is applied and quasi-static conditions considered. The
K0 -procedure, when working with a problem in which the two-phase formulation for unsaturated soils is
adopted, requires the user to specify:
3.1 an initial soil surface
3.2 an initial phreatic surface
The initial soil surface is selected by the user, after creating the slope geometry in GID. Whereas, the
initial phreatic surface can be specified with one of two available methodologies: sketched by the user
while creating the geometry in GID or assigned from an external file, which specifies the coordinates of
two or more points associated to the phreatic surface location.
After initialization, the two problems under analysis are modelled in fully dynamic conditions, applying
respective hydraulic boundary conditions. Hence, failure and post-failure behaviors can be captured.
This tutorial demonstrates the use of
3.1 two phase formulation for unsaturated soil
3.2 transient hydraulic boundary conditions (total head, rainfall and seepage face)
3.3 K0 -procedure with the user-specified initial soil and phreatic surfaces. The latter can be either
specified in the GID preprocessor or assigned considering an external file

Figure 13.1: Problem definition for failure of unsaturated slopes. Two mechanisms are analysed:
an instability induced by rapid draw-down (a) and one triggered by the combination
of high saturation and rainfall (b).

13.1 Problem definition


The slope geometry and the dimensions of the problem are given in Figure 13.1. The soil is modelled with
the Mohr-Coulomb model and a linear SWRC with the properties given in Table 13.1.
13.2 Rapid Drawdown
13.2.1 Creating input data
The geometry, discretization, material properties, and all other input parameters will be defined using the
GiD pre-pocessor. This follows a similar procedure as described in Section 3.2. Here only the differences
with respect to previous examples will be highlighted.
254 Anura3D MPM Software, Tutorial Manual

Table 13.1: Material parameters of the soil.

material soil
material type unsaturated material - 2-phase with suction effects
initial porosity [–] 0.4
density solid [kg/m3 ] 2650
density liquid [kg/m3 ] 1000
intrinsic permeability liquid [m2 ] 6e-12
Bulk modulus liquid [kPa] 60000
dynamic viscosity liquid [kPa · s] 1e-6
K0 - value [-] 0.5
material model solid Mohr-Coulomb
effective Poisson ratio [–] 0.3
effective Young modulus [kPa] 30000
effective cohesion [kPa] 1
effective friction angle [◦ ] 27
dilatancy angle [◦ ] 0.0
tensile strength [kPa] 0.0
liquid retention curve linear
linear coefficient [1/kPa] 4e-4
hydraulic conductivity curve constant

13.2.1.1 Starting pre-processor


Start the GiD pre-processor following the steps as described in Section 3.2.1. Set the problemtype as
described in Section 3.2.1 step (2). Save the project in the desired directory with an appropriate name
(e.g. "RapidDrawDown").
13.2.1.2 Defining units and dimensions
The problem is simulated in 2D-plane strain conditions; therefore, under Units and dimensions in Prob-
lem dimensions, select 2D:plane-strain. The single point formulation will be used; so, under Units and
dimensions in MPM discretization type, select single_point.
13.2.1.3 Defining geometry
To generate the geometry follow the instructions given in Section 3.2.2. Figure 13.1 reports the slope
dimensions. The computational domain is extended vertically above the crest of the slope, the entire
domain is bounded by four points of coordinates P1 = (0; –0.6); P2 = (10; –0.6); P3 = (10; 3.6); P4 =
(0; 3.6). The initial water table location corresponds to an horizontal line at y=2m. After drawing the line,
the command Geometry create IntersectLine is used to cut the lines intersected by the last line drawn. All
these lines need to be selected (as displayed in Figure 13.2) then press “esc” on your keyboard to obtain
the final modification.
Slope failure under transient hydraulic loads 255

Figure 13.2: Lines definition with initial water table as a geometrical entity (line). Red lines are
selected after using the command Geometry create IntersectLine.

Now it is possible to create the surfaces and complete the geometry definition, as visible in Figure

Figure 13.3: Geometry definition of the rapid draw down problem.


256 Anura3D MPM Software, Tutorial Manual

13.2.1.4 Defining material properties


Define a new material with an appropriate name (e.g. "Slope") as explained in 3.2.4. Material parameters
are given in Table 13.1 and shown in Figure 13.4, however during the initialization phase two parameters
are different: permeability should be assigned a value of 6 · 10–11 m2 , to speed up the consolidation pro-
cess, and effective cohesion c = 200kPa to prevent slope movements during this phase. Subsequently,
after performing the first load step, these values will be modified to those reported in Table 13.1.

Figure 13.4: Defining material properties for the rapid draw down problem in GiD.
13.2.1.5 Specifying material points
Specify the initial material point distribution following instructions from Section 3.2.5. In this example
choose 3 material points per element for the slope. Check if the material and the number of material
points are assigned correctly (Figure13.5).
13.2.1.6 Defining boundary conditions
Define the boundary conditions following the steps as described in Section 3.2.6.
Applying fixities
Since in this example a fully coupled two-phase analysis is performed, solid and liquid fixities must be
assigned. The solid displacement at the boundaries will be fixed as follows:
3.1 Left side: horizontal fixity in x-direction;
Slope failure under transient hydraulic loads 257

Figure 13.5: Specification of the material and number of material points per element in the rapid
draw down problem.

3.2 Right side: horizontal fixity in x-direction;


3.3 Top side: vertical fixity in y-direction;
3.4 Bottom side: full fixities in x- and y-direction;
3.5 Check if the x- and y- fixities are assigned correctly, see Figure 13.6;

Figure 13.6: Solid fixities for the rapid draw down problem.

The liquid displacement at the boundaries will be fixed as follows:


3.1 Left side: horizontal fixity in x-direction;
3.2 Right side: horizontal fixity in x-direction;
3.3 Top side: vertical fixity in y-direction;
3.4 Bottom side: vertical fixity in y-direction;
3.5 Check if the x- and y- fixities are assigned correctly, see Figure 13.7;
258 Anura3D MPM Software, Tutorial Manual

Figure 13.7: Liquid fixities for the rapid draw down problem.
13.2.1.7 Defining initial conditions
The stresses in the soil will be initialised by gravity loading, but to facilitate the convergence, the K0
procedure is used, thus select <yes> on the <Apply K0 -procedure> option. This option can be found on
the Anura3D tree menu, under the section <Initial conditions → Stress initialization>.
The K0 -procedure requires the specification of the soil and the phreatic initial surfaces (in this case lines
since the model is in 2D). These options are found in the Anura3D tree menu under the section <Initial
conditions → Stress initialization → General conditions>. Double click on <Soil Surface> and <Select>
the lines corresponding to the slope profile, as reported in Figure 13.8, then, click on <End> and <OK>.

Figure 13.8: Assign soil surface specification to lines for the rapid draw down problem.

The correct assignment can be verified by right-clicking on the option Soil Surface → Draw → Draw
values, as visible in Figure 13.9
Slope failure under transient hydraulic loads 259

Figure 13.9: Checking the initial soil surface correct assignment for the rapid draw down model.

After specifying the soil surface, once more in the Anura3D tree menu, click on <Phreatic Surface> →
<Select water table profile>. Once clicked on <Select>, the lines corresponding to the initial water table
location need to be selected, as reported in Figure 13.10. If the initial phreatic surface is not specified
by the user, it is automatically located along the horizontal lower edge of the model. The max suction
at soil surface is not specified, thus the suction values above the initial river level will follow a linear
approximation.

Figure 13.10: Assign phreatic surface specification to lines for the rapid draw down problem.

The correct assignment can be verified by right-clicking on the option Phreatic Surface → Draw → Draw
values, as visible in Figure 13.11
260 Anura3D MPM Software, Tutorial Manual

Figure 13.11: Checking the initial phreatic surface correct assignment for the rapid draw down
problem.
13.2.1.8 Defining hydraulic boundary conditions
The hydraulic boundary conditions, i.e. total hydraulic head, potential seepage face and rainfall, are
assigned to boundary nodes of the body under analysis. Since the body is expected to experience large
displacements, initial boundary nodes may differ from boundary nodes at a later stage of the simulation,
thus it is necessary to define a potential area/volume of research of boundary nodes, as explained in [?
]. This area is defined in GID, in the Anura3D menu, under the section Boundary Conditions → Hydraulic
Conditions.

Figure 13.12: Checking the assignment to the points defining the total hydraulic head potential
area of research for the rapid draw down problem.

Here, it is possible to define for each hydraulic boundary condition, the coordinates of minimum and
maximum points defining the rectangular area/ box volume where the condition is supposed to act for the
entire simulation. In the rapid draw down problem it is necessary to assign an area to the total hydraulic
head condition, and an equal area to the potential seepage face. In this manner, above the current river
level (at the beginning of this simulation located at y=2m) the boundary condition applied to the slope is
the potential seepage face. In GID under the selected hydraulic boundary condition, first double-click on x-
and y- min and select the point P1. Click on <End> and <OK> for the correct assignment. Then, double-
click on x- and y-max from the menu, select the point P3 (the points names are reported above in Figure
13.2), click on <End> and <OK>. The final assignment can be checked by right-clicking on Hydraulic
Slope failure under transient hydraulic loads 261

Head → Draw → Draw values, as reported in Figure 13.12. The same procedure can be repeated, but
this time the Seepage face condition should be selected in the menu. The final assignment should look
as reported in Figure 13.13.

Figure 13.13: Checking the assignment to the points defining the seepage face potential area of
research for the rapid draw down problem.
13.2.1.9 Creating mesh
An unstructured mesh is used for this example. To generate the mesh follow the steps given in Section
6.2.7. For this example the size assigned to all the surfaces is "0.4", and after click on Generate mesh,
the size of elements to be generated should be set equal to 1. The mesh should count 552 triangular
elements and 312 nodes as shown Figure 13.14.

Figure 13.14: Computational mesh of the rapid draw down problem.


13.2.1.10 Initialisation of calculation data
The first load step is gravity loading, thus the input parameters are specific for this load step (Fig. 13.15).
Section 13.2.2.2 explains how to modify the CPS for the following load steps.
Computation method
The option MPM - mixed integration should be selected.
Calculation step data
There is only 1 step for gravity loading. The end of the step is determined by the convergence criteria. A
Courant number of 0.98 is advised to ensure the stability of the solution. Set number of calculation steps
[-] to 1.
Gravity data
262 Anura3D MPM Software, Tutorial Manual

Use standard gravity value and unit vector down: g = 9.81 ∗ (0, –1.0, 0)
Gravity load
Gravity is applied from the beginning, therefore choose apply gravity load - stepwise and set the multipli-
ers for gravity loading as 1.0 (initial and final value). The gravity multipliers will be maintained constant
throughout the calculation.
Hydraulic head
In this example the total hydraulic head is applied, thus choose apply hydraulic head.
Seepage face
In this example the potential seepage face is applied, thus choose apply seepage face.
Quasi-static convergence
The end of the first load step is determined by convergence criteria, which corresponds to a quasi-static
equilibrium condition. Set the QUASI-STATIC CONVERGENCE to apply convergence criteria . The
convergence criteria are the tolerated error of the kinetic energy, the tolerated error of the out-of-balance
force, or the maximum number of time steps. In this example, in order to reduce the computational time,
use a maximum number of time steps equal to 2500.
Mass scaling
In this example the mass scaling is used to speed up the computation and a value of 80 is assigned to
the mass scaling factor.
Homogeneous local damping
A local damping coefficient for all active elements of 0.05 is applied.
Strain smoothing
The strain smoothing algorithm will be switch on to minimise the kinematic locking.
Liquid pressure increment smoothing
The liquid pressure smoothing will be switch on to minimise pressure oscillations during the post-failure
phase.
Default values
All other calculation options are not used in this example and the provided default values can be kept.
Slope failure under transient hydraulic loads 263

Figure 13.15: Dialogue box to define calculation parameters in GiD for the rapid draw down
problem.
13.2.1.11 Generating Input Files
Once the geometry, material properties, boundary conditions, and calculation parameters are defined,
and the mesh is generated the input files for the Anura3D analysis, i.e. GOM and CPS file, have to be
created (follow steps given in Section 3.2.9).
The generated input files RapidDrawDown.GOM and RapidDrawDown.CPS_001 can be found in the new
folder RapidDrawDown.A3D, created in the directory which was specified earlier by the user (Sec. 13.2.1.1):
D:\..\RapidDrawDown.A3D\RapidDrawDown.GOM
264 Anura3D MPM Software, Tutorial Manual

D:\..\RapidDrawDown.A3D\RapidDrawDown.CPS_001

In this example it is required to add in the same directory a file containing the history of river levels
variations, also named hydrogram. A .TXT file can be created to this aim, which should contain in the
first column the values of the river height in [m] and in the second column the time of occurrence of those
heights in [s]. During the entire initialization phase, the initial river level (at t = 0s, y = 2m) is maintained.
If the simulation time is bigger then the last time instant specified in this file, Anura3D will automatically
consider this last value of river height for the following part of the simulation. It is fundamental that the
file is always renamed with the same name of GOM and CPS and with an extension .HHBF, thus in this
case the file is named RapidDrawDown.HHBF. The inside structure of the file is reported in Figure 13.16
together with the location in the same folder of GOM and CPS.

Figure 13.16: Adding the HHBF file to specify the total hydraulic head history.
13.2.2 Performing calculation in Anura3D
The calculation can be performed as explained in Section 3.3.
13.2.2.1 Stage 1: Gravity Loading
At the end of the first load step, the effective stresses are initialized and are in equilibrium with the gravity.
The recommended way to visualise Anura3D results is by using the Paraview software (see Sections 2.5
and 2.1.3). Instructions presented in Section 3.4 can be followed to open and analyse the results.
Figure 13.17 shows the contour of liquid pressure (a) and total vertical stress (b) at the end of load step 1.
The liquid pressure are positive for suction. Total stress account for slope material weight plus the water
weight above the soil surface.
Slope failure under transient hydraulic loads 265

Figure 13.17: Liquid pressure (a) and total vertical stress (b) at the end of load step 1.
13.2.2.2 Stage 2: Slope Failure
In this load step the failure of the slope is induced by the rapid draw down, which is controlled by the
HHBF file. It has not be noted that the speed of the drawdown is set as extremely rapid. This is due to
the large values of hydraulic conductivity used in this problem, with the aim of speeding up computational
time. The CPS_002 file will be modified in order to:
⋄ Perform a dynamic calculation instead of a quasi-static analysis
⋄ Update material properties
The second phase of the analysis will last up to load step 19 and each load step will last 1s. The total
time is reset to 0.0s:

1 $$NUMBER_OF_LOADSTEPS
2 19
3 $$TIME_PER_LOADSTEP
4 1.0
5 $$TOTAL_TIME
6 0.0

Quasi-static convergence is deactivated:

1 $$QUASISTATIC_CONVERGENCE
2 0

Material updated is activated:

1 $$APPLY_MATERIAL_UPDATE
2 1
266 Anura3D MPM Software, Tutorial Manual

Save the new .CPS_002. The .GOM file will be modified as follows:

1 $$INTRINSIC_PERMEABILITY_LIQUID
2 6e−12
3 ...
4 $$COHESION
5 1.0

Save the new .GOM. The .HHBF file will be modified as follows:

1 0.0 2.0
2 1.0 2.0
3 2.0 0.6

Save the new .HHBF and re-start the calculation, which should last ≈ 10/15 minutes. Once the calculation
is finished, open the results in Paraview. The river level is suddenly reduced, while the pore pressure in
the slope are still high, triggering the failure mechanism, with displacements (norm) at t=18s reported in
Figure 13.18.

Figure 13.18: Norm of solid displacements at the end of the post-failure phase, at 18s.

It is possible to select MPs at the crest and at the toe of the slope, extract the selected data in terms of
scalar or vector quantities and save in .CSV format, at one or more load steps. In Figure 13.19 norm of
displacement and liquid pressure of MP1 (toe) and MP2 (crest) are plot vs time. Liquid pressures allow
to visualize how the rapid river level draw down impacts on the toe values, while the crest MP (MP2)
experience minimum variations from the initial value. In terms of displacements, both MP2 and MP1
show displacement progressively increasing from 3s, until reaching a stable value at t=16s, with the crest
recording slightly higher displacements compared to the toe of the slope.
Slope failure under transient hydraulic loads 267

Figure 13.19: Norm of displacement and liquid pressure (b) for MP1 and MP2. In (a) the initial
location of the MPs.
13.2.3 Variation on initial conditions: maximum suction threshold
An option to limit initial maximum suction at the slope crest during K0 procedure is available in Anura3D.
The maximum suction can be reasonably assigned by the user when for instance monitoring data are
available. In the rapid drawdown case a maximum suction threshold of 2kPa is set as an example, thus
CPS_001 is modified by adding the following flag:
1 $$K0_PROCEDURE
2 1
3 ...
4 $$K0_MAX_SUCTION
5 2.0

Save .CPS_001 and run again the simulation following the same passages explained in the previous
sections. The final displacements contour is reported in Figure 13.20, clearly showing the impact of
the lower suction on the overall state of stress, with consequent larger displacements at the end of the
post-failure phase.

Figure 13.20: Norm of solid displacements at the end of the post-failure phase, at 18s for the
case with maximum suction threshold during K0 procedure.
13.3 Rainfall infiltration
13.3.1 Creating input data
The geometry, boundary conditions, material properties and mesh are defined using GiD pre-processor.
The calculation options are defined in the CPS file. Both follow the same procedure as described in
Section 3.2. Only variations to previous examples are highlighted in the following sections.
13.3.1.1 Starting pre-processor
Start the GiD pre-processor following the steps as described in Section 3.2.1. Save the project in the
desired directory on the hard disk with an appropriate name (e.g. "RainfallInfiltration").
268 Anura3D MPM Software, Tutorial Manual

13.3.1.2 Defining units and dimensions


The problem is simulated in 2D-plane strain conditions; therefore, under Units and dimensions in Prob-
lem dimensions, select 2D:plane-strain. The single point formulation will be used; so, under Units and
dimensions in MPM discretization type, select single_point.
13.3.1.3 Defining geometry
To generate the geometry follow the instructions given in Section 3.2.2. Figure 13.1 reports the slope
dimensions. As a reference, the key coordinates indicated in Figure 13.21 and Table 13.2 can be used.
Differently from the previous example, the initial water table location is specified in an external text file as
explained in 13.3.1.7, thus no additional lines should be created inside the slope geometry.

Figure 13.21: Lines definition of the rainfall infiltration problem. Key points are indicated as given
in Table 13.2

Table 13.2: Key coordinates of the rainfall infiltration problem.

Point X coordinate [m] Y coordinate [m]


P1 0 -0.6
P2 10 -0.6
P3 10 3.6
P4 0 3.6
P5 10 0.6
P6 6.6 0.6
P7 2 3
P8 0 3
P9 0 2

Once created the surfaces, the geometry definition should look like shown in Figure 13.22.
Slope failure under transient hydraulic loads 269

Figure 13.22: Geometry definition of the rainfall infiltration problem.


13.3.1.4 Defining material properties
Material parameters are the same adopted in the previous example (Table 12.1). To define the material of
the slope, follow what reported in 13.2.1.4.
13.3.1.5 Specifying material points
Specify the initial material point distribution following instructions from Section 3.2.5. As in the previous
example, choose 3 material points per element for the slope. Check if the material and the number of
material points are assigned correctly (Fig. 13.23)

Figure 13.23: Specification of the material and the number of material points per element in the
rainfall infiltration problem.
13.3.1.6 Defining boundary conditions
Define the boundary conditions following the steps as described in Section 3.2.6.
Applying fixities
Since in this example a fully coupled two-phase analysis is performed, solid and liquid fixities must be
assigned.
The solid displacement at the boundaries will be fixed as follows:
3.1 Left side: horizontal fixity in x-direction;
3.2 Right side: horizontal fixity in x-direction;
3.3 Top side: vertical fixity in y-direction;
3.4 Bottom side: full fixities in x- and y-direction;
3.5 Check if the x- and y- fixities are assigned correctly, see Figure 13.24;
270 Anura3D MPM Software, Tutorial Manual

Figure 13.24: Solid fixities for the rainfall infiltration problem.

The liquid displacement at the boundaries will be fixed as follows:


3.1 Upper lines on left side: horizontal fixity in x-direction;
3.2 Right side: horizontal fixity in x-direction;
3.3 Top side: vertical fixity in y-direction;
3.4 Bottom side: vertical fixity in y-direction;
3.5 Check if the x- and y- fixities are assigned correctly, see Figure 13.25;

Figure 13.25: Liquid fixities for the rainfall infiltration problem.

Applying loading conditions


In order to reproduce a water level at the left-end, a liquid pressure linearly increasing with depth (hydro-
static pressure distribution) is applied on the left-bottom line of the model.
Choose Loading Conditions, double click on Liquid Pressure and introduce the values shown in Figure
13.26).
Slope failure under transient hydraulic loads 271

Figure 13.26: Applied liquid pressure at the left-bottom line of the slope.
13.3.1.7 Defining initial conditions
The K0 -procedure requires the specification of the soil and the phreatic initial surfaces (in this case lines
since the model is in 2D). As explained in 13.2.1.7 assign the Soil Surface condition to the lines corre-
sponding to the slope profile. Figure 13.27 shows the correct assignment.

Figure 13.27: Checking the initial soil surface correct assignment for the rainfall infiltration model.

In this case the initial phreatic level is assigned from an external text file which specifies the coordinates
of points associated to the phreatic surface location. First, create the .TXT file by typing the values
indicated in Figure 13.28. The first number corresponds to the total number of points while in the left
and right column are listed their -x and -y coordinates, respectively. Save the file in the project directory
RainfallInfiltration.gid, it is fundamental that the file is always renamed with the same name of
GOM and CPS. Then, change the extension to .PSF_1.
272 Anura3D MPM Software, Tutorial Manual

Figure 13.28: .txt file to specify the coordinates of the initial phreatic surface .

Now, in the Anura3D menu click on the option named Phreatic Surface → Water table from file PSF_1.
With this feature it is possible to assign the initial phreatic level included in the external file .PSF_1 to one
or more materials. In this example the initial phreatic level should be assigned to the slope, thus, fill the
options as shown in Figure 13.29.

Figure 13.29: Assign phreatic surface to the slope material for the rainfall infiltration problem.
13.3.1.8 Defining hydraulic boundary conditions
The hydraulic boundary conditions can be assigned in GiD as explained in 13.2.1.8. In the rainfall infil-
tration problem, the slope surface is a potential seepage face during the initialization phase and then an
infiltration rate of 2· 10–4 m/s is applied to simulate a heavy rainfall in the following steps. Thus, it should
be assigned an area to the infiltration condition, and an equal area to the potential seepage face.
Assign for each hydraulic boundary condition the coordinates of minimum and maximum points defining
the rectangular area where the conditions are supposed to act. Specify the infiltration rate value in y-
direction of as shown in Figure 13.30. The final assignment of the seepage face and infiltration conditions
can be checked as shown in Figure 13.31 and 13.32.
Slope failure under transient hydraulic loads 273

Figure 13.30: Defining the infiltration rate value for the rainfall infiltration problem in GiD.

Figure 13.31: Checking the assignment to the points defining the seepage face potential area of
research for the rainfall infiltration problem.

Figure 13.32: Checking the assignment to the points defining the infiltration potential area of
research for the rainfall infiltration problem.
274 Anura3D MPM Software, Tutorial Manual

13.3.1.9 Creating mesh


To generate the mesh follow the steps given in Section 6.2.7. As in the previous example, an unstructured
mesh is used with the specifications detalied in 13.2.1.9. Figure 13.33 shows the generated mesh made
of 571 triangular elements and 322 nodes.

Figure 13.33: Computational mesh of the rainfall infiltration problem.


13.3.1.10 Initialisation of calculation data
The first load step is gravity loading, thus the input parameters are specific for this load step (Fig. 13.34).
Section 13.3.2.2 explains how to modify the CPS for the following load steps.
Computation method
The option MPM - mixed integration should be selected.
Calculation step data
There is only 1 step for gravity loading. The end of the step is determined by the convergence criteria. A
Courant number of 0.98 is advised to ensure the stability of the solution. Set number of calculation steps
[-] to 1.
Gravity data
Use standard gravity value and unit vector down: g = 9.81 ∗ (0, –1.0, 0)
Gravity load
Gravity is applied from the beginning, therefore choose apply gravity load - stepwise and set the multipli-
ers for gravity loading as 1.0 (initial and final value). The gravity multipliers will be maintained constant
throughout the calculation.
Liquid pressure
From the beginning of the calculation the linear distribution of liquid pressure is applied at the left of the
model, thus choose apply liquid pressure - stepwise and set the multipliers for gravity loading as 1.0 (initial
and final value).
Seepage face
In this example the potential seepage face is applied, thus choose apply seepage face.
Infiltration
In this example the infiltration is applied in the second stage of calculation, thus choose do not apply
infiltration.
Quasi-static convergence
The end of the first load step is determined by convergence criteria, which corresponds to a quasi-static
equilibrium condition. Set the QUASI-STATIC CONVERGENCE to apply convergence criteria. The con-
vergence criteria are the tolerated error of the kinetic energy, the tolerated error of the out-of-balance
force, or the maximum number of time steps. In this example, in order to reduce the computational time,
use a maximum number of time steps equal to 2500.
Mass scaling
In this example the mass scaling is used to speed up the computation and a value of 80 is assigned to
the mass scaling factor.
Homogeneous local damping
A local damping coefficient for all active elements of 0.05 is applied.
Slope failure under transient hydraulic loads 275

Strain smoothing
The strain smoothing algorithm will be switch on to minimise the kinematic locking.
Liquid pressure increment smoothing
The liquid pressure smoothing will be switch on to minimise pressure oscillations during the post-failure
phase.
Default values
All other calculation options are not used in this example and the provided default values can be kept.
276 Anura3D MPM Software, Tutorial Manual

Figure 13.34: Dialogue box to define calculation parameters in GiD for the rainfall infiltration
problem.
Slope failure under transient hydraulic loads 277

13.3.1.11 Generating Input Files


Once the geometry, material properties, boundary conditions, and calculation parameters are defined,
and the mesh is generated the input files for the Anura3D analysis, i.e. GOM and CPS file, have to be
created (follow steps given in Section 3.2.9).
The generated input files RainfallInfiltration.GOM and RainfallInfiltration.CPS_001 can be
found in the new folder RainfallInfiltration.A3D, created in the directory which was specified earlier
by the user (Sec. 13.2.1.1):

D:\..\RainfallInfiltration.A3D\RainfallInfiltration.GOM

D:\..\RainfallInfiltration.A3D\RainfallInfiltration.CPS_001

13.3.2 Performing calculation in Anura3D


The calculation can be performed as explained in Section 3.3.
13.3.2.1 Stage 1: Gravity Loading
At the end of the first load step, the effective stresses are initialized and are in equilibrium with the gravity.
13.3.2.2 Stage 2: Slope Failure
In this stage of calculation, the failure of the slope is induced by the rainfall infiltration. The .CPS_002 file
will be modified in order to:
⋄ Perform a dynamic calculation instead of a quasi-static analysis
⋄ Update material properties
The second phase of the analysis will last up to load step 22 and each load step will last 1s:

1 $$NUMBER_OF_LOADSTEPS
2 22
3 $$TIME_PER_LOADSTEP
4 1.0

Quasi-static convergence is deactivated:

1 $$QUASISTATIC_CONVERGENCE
2 0

Infiltration condition is activated:

1 $$APPLY_INFILTRATION
2 1

Material updated is activated:

1 $$APPLY_MATERIAL_UPDATE
2 1

Save the new .CPS_002. The .GOM file will be modified as follows:

1 $$INTRINSIC_PERMEABILITY_LIQUID
2 6e−12
3 ...
4 $$COHESION
5 1.0

Save the new .GOM and re-start the calculation.


278 Anura3D MPM Software, Tutorial Manual

13.3.2.3 Stage 3: Slope Stabilization


At this stage, the Rainfall is switched off and the seepage face is re-established. The .CPS_023 file must
be modified as follows:

1 $$NUMBER_OF_LOADSTEPS
2 32

Infiltration condition is deactivated:

1 $$APPLY_INFILTRATION
2 0

Save the new .CPS_023 and re-start the calculation.


13.3.3 Visualisation of results in ParaView
The recommended way to visualise Anura3D results is by using the Paraview software (see Sections 2.5
and 2.1.3). Instructions presented in Section 3.4 can be followed to open and analyse the results.
Figure 13.35 shows the contour of liquid pressure (a) and total vertical stress (b) at the end of load step 1.
The liquid pressure are positive for suction. Total stress account for slope material weight plus the water
weight above the soil surface.
After stress initialisation, rainfall infiltration is applied at the top surface inducing the slope failure. Total
displacements at the end of the simulation are shown in Figure 13.36.

Figure 13.35: Liquid pressure (a) and total vertical stress (b) at the end of load step 1.
Slope failure under transient hydraulic loads 279

Figure 13.36: Norm of solid displacement at the end of the simulation.


13.3.4 Variation on triggering action: application of zero suction
A variation of the rainfall infiltration problem is proposed in this section.
In the second stage of calculation, the slope instability is not induced by activating the infiltration feature
but by applying a suction equal to 0 at the slope surface.
To do that, two calculation parameters in CPS_002 have to be modified from the previous case.
Since in Anura3D the default value of liquid pressure on the boundaries is zero, is sufficient to deactivate
the seepage face condition in addition to keeping the infiltration flag disabled:

1 $$APPLY_SEEPAGE_FACE
2 0
3 $$APPLY_INFILTRATION
4 0

Save .CPS_002 and run the simulation up to load step 22. At this stage, the seepage face is re-established
in .CPS_023 to facilitate the slope stabilization:

1 $$APPLY_SEEPAGE_FACE
2 1

The final displacements contour at load step 32 is reported in Figure 13.37.

Figure 13.37: Norm of solid displacements at the end of the simulation for the case with zero
suction at the slope surface.
13.4 Stress initialization from file
In the previous sections of this chapter, the initial stress state is generated using K0-procedure and gravity
loading; in many cases this procedure may be computationally expensive. For example, in many rainfall
or seepage-induced slope failures, the initiation phase may take several days, when only very limited
displacement are observed. Usually, traditional FEM analyses are computational less expensive than
MPM simulations in the initiation phase, thus it may be convenient to initialize the stress state for the MPM
analyses using the results of a previous calculation. In this section, the option of initializing the material
280 Anura3D MPM Software, Tutorial Manual

Figure 13.38: Example of text file for mapping of stresses for initialization purposes (.MAPF).

point stress state from a text file is explained. The text file must contain the values of stress and pore
pressure at given points; it can be obtained by exporting the results from a previous calculation performed
with a different software. The location of the give points does not need to coincide with the position
of the material points or nodes of the computational mesh in MPM because Anura3D will interpolate
automatically the stress at material point using a kernel interpolation technique. More details can be
found in [? ].
In the following, the same example of the previous section is solved replacing the gravity loading phase
with a stress initialization from file.
13.4.1 Creating input data
The geometry, discretization and boundary conditions are identical to the previous case, see Sec 13.3.1.1.
The material parameters are identical to previous section except for cohesion and intrinsic permeability.
In this case a high cohesion and permeability during initialization phase are not necessary; Cohesion can
be set to 1kPa and intrinsic permeability can be set at 6e – 12m2 /s. Save the project as RainfallInfiltration-
mapping.gid.
13.4.1.1 Preparation of input file for stress initialization
In this example, the results of a FEM analysis is used to create the input file for material point stress
initialization in Anura3D. The simulation is 2D-plane strain, and the two-phase single-point formulation is
used, thus the required variables are:
⋄ the coordinates of the points in which the stress state is known: X[m] and Y[m];
⋄ the entries of the total stress tensor at these points: σxx [kPa], σyy [kPa], σ xy [kPa];
⋄ the pore water pressure at these points: Pwp [kPa]
for a 3D analyses the coordinate Z and the stress σ zz, σ xz, σ yz are also necessary. Pore water pressure
is not necessary in simulations with dry material. Effective stresses are calculated automatically applying
the principle of effective stress; degree of saturation and hydraulic conductivity are calculated from suction
using the soil water retention curve and the hydraulic conductivity curve.
A reference value called "SmoothingLength[m]" is required in the last column. This is used as a reference
lenght in the cubic spline function applied in Anura3D for kernel interpolation technique. An appropriate
value is 90% of the average distance between the given points. If the given points are nodes of the mesh
of a previous FE calculation, than the smoothing length can be 90% of the average element size. The
mapping procedure is very robust, but the best results are obtained when the distribution of given points
is similar to the distribution of element nodes in the MPM simulation.
The input file must be formatted as shown in Fig. 13.38
The order of the columns is not important but make sure you do not change the name of the headers or
add extra spaces otherwise Anura3D will not recognize correctly the input and will give an error.
Note that initial strains and displacements are assumed to be 0, this is acceptable when the deformations
occurred during the initialization phase are negligible compared with the post-failure displacements.
Save the file as projectname.MAPF (in this case RainfallInfiltration-mapping.MAPF)
Slope failure under transient hydraulic loads 281

Figure 13.39: View of Initial conditions menu.

13.4.1.2 Initialisation of calculation data


To activate the option of stress initialization from file, select the appropriate option in Initial conditions >
Stress Initialization >FROM FILE as show in Figure 13.39.
The gravity loading step is not necessary anymore and rainfall infiltration can be simulated from the first
load step, thus the input parameters are:
Computation method
The option MPM - mixed integration should be selected.
Calculation step data
Set 21 load steps (number of calculation steps = 21), each will be 1s long (time per calulcation step
[s]=1.0).
Gravity data
Use standard gravity value and unit vector down: g = 9.81 ∗ (0, –1.0, 0)
Gravity load
Gravity is applied from the beginning, therefore choose apply gravity load - stepwise and set the multipli-
ers for gravity loading as 1.0 (initial and final value). The gravity multipliers will be maintained constant
throughout the calculation.
Liquid pressure
From the beginning of the calculation the linear distribution of liquid pressure is applied at the left of the
model, thus choose apply liquid pressure - stepwise and set the multipliers for gravity loading as 1.0 (initial
and final value).
Seepage face
In this example the potential seepage face is not applied, thus choose do not apply seepage face.
Infiltration
In this example the infiltration is applied since the first load step, thus choose apply infiltration.
Quasi-static convergence
With the stress initialzation from file this is not necessary. Set the QUASI-STATIC CONVERGENCE to do
not apply convergence criteria.
Mass scaling
In this example the mass scaling is used to speed up the computation and a value of 80 is assigned to
the mass scaling factor.
Homogeneous local damping
A local damping coefficient for all active elements of 0.05 is applied.
Strain smoothing
The strain smoothing algorithm will be switch on to minimise the kinematic locking.
282 Anura3D MPM Software, Tutorial Manual

Liquid pressure increment smoothing


The liquid pressure smoothing will be switch on to minimise pressure oscillations during the post-failure
phase.
Stress initialization
The stresses in the soil will be initialised by reading the file *.MAPF, thus select from file.
Default values
All other calculation options are not used in this example and the provided default values can be kept.
13.4.1.3 Generating Input Files
Once the geometry, material properties, boundary conditions, and calculation parameters are defined,
and the mesh is generated the input files for the Anura3D analysis, i.e. GOM and CPS file, have to be
created (follow steps given in Section 3.2.9).
The generated input files RainfallInfiltration_mapping.GOM and RainfallInfiltration_mapping.CPS_001
can be found in the new folder RainfallInfiltration_mapping.A3D, created in the directory which
was specified earlier by the user (Sec. 13.2.1.1):

D:\..\RainfallInfiltration_mapping.A3D\RainfallInfiltration_mapping.GOM

D:\..\RainfallInfiltration_mapping.A3D\RainfallInfiltration_mapping.CPS_001

13.4.2 Performing calculation in Anura3D


The calculation can be performed as explained in Section 3.3. In this case, only the slope failure stage is
simulated; however the stabilization phase can be added as in 13.3.2.3.
13.4.3 Visualisation of results in ParaView
The recommended way to visualise Anura3D results is by using the Paraview software (see Sections 2.5
and 2.1.3). Instructions presented in Section 3.4 can be followed to open and analyse the results.
Figure 13.40 shows the contour of liquid pressure (top) and total vertical stress (bottom) at the very first
time step, which are the results of the stress initialization procedure that uses the input file prepared as
exaplined in Sec. 13.4.1.1. It is always recommended to check that this output matches the expectations
to verify that the settings of the initialization procedure are correct.
After stress initialization, rainfall infiltration is applied at the top surface inducing the slope failure. Total
displacements at the end of the simulation are shown in Figure 13.41.
Slope failure under transient hydraulic loads 283

Figure 13.40: initial pore pressure and total vertical stress at the beginning of the simulation.

Figure 13.41: Total dsplacement at the end of the simulation.


284 Anura3D MPM Software, Tutorial Manual
References
286 Anura3D MPM Software, Tutorial Manual
A Shallow foundation in 3D-cylindrical coordinates
Authors: Francesca Ceccato
This appendix solves the shallow foundation problem of Chapter 8 in 3D-cylindrical coordinates. We will
simulate a circular footing with a diameter of 4m. This can be done with a 2D-axisymmetric model or with
a 3D model using cylindrical coordinates.
The 2D-axisymmetric model is similar to the case presented in chapter 8, but the option "‘2D-axisymmetric"’
should be selected in the Calculation data. The 3D case is illustrated in the following. The geometry of
the problem is similar to Chapter 8, but a 3D model will be used in this case. In order to reduce the com-
putational cost, only a 30 degrees-wedge of a circular footing is modelled. The foundation is elastic and
the soil is modelled with the Mohr-Coulomb model. The properties for both materials are given in Table
8.2.
A load is applied at the top of the foundation, and its magnitude increases progressively by means of the
load multipliers. The use of Moving mesh feature in 3D problems is illustrated.
A.1 Creating input data
The geometry, discretization, material properties, and all other input parameters will be defined using
the GiD pre-pocessor. This follows a very similar procedure as described in Section 8.2. Here only the
differences with respect to previous examples will be highlighted.
A.1.1 Defining geometry
Start the GiD pre-processor following the steps as described in Section 3.2.1. Save the project in the
desired directory on the hard disk with an appropriate name (e.g. "foundation-3Dcylindrical").
Create a 2D geometry following the instructions given in Section 8.2.3 considering the dimensions given
in Table 8.1. We will create the 3D geometry applying a rotation as explained in the following and shown
in Figure A.1:
3.1 select Utilities>Copy
3.2 choose Surfaces on Entity types
3.3 choose Rotation on Transformation
3.4 set 30 degrees angle
3.5 select the bottom right point as a first point: (0,0,0)
3.6 select the top right point as a second point: (0,13,0)
3.7 select do extrude Volumes
3.8 press Select and choose all the surfaces of the model
3.9 press Escape and you will get the geometry shown in Figure A.2
288 Anura3D MPM Software, Tutorial Manual

Figure A.1: Definition of the geometry of circular footing.

Figure A.2: Geometry of circular footing.


Shallow foundation in 3D-cylindrical coordinates 289

A.1.2 Defining material properties


The materials are the same of Chapter 8. The parameters are given in Table 8.2. Follow the instructions
given in Section 3.2.4 to define each material and assign it to the corresponding volumes. Checking the
assigned materials, it should look like shown in Figure A.3.

Figure A.3: Materials of the shallow foundation problem in 3D.


A.1.3 Specifying material points
Specify the initial material point distribution following instructions from Section 3.2.5. In this example
choose 4 material points per element and assign it to the soil and the foundation volumes. Check if the
material points are assigned correctly as shown in Figure A.4.
290 Anura3D MPM Software, Tutorial Manual

Figure A.4: Specification of the number of material points per element in the shallow foundation
problem.
A.1.4 Defining boundary conditions
Define the boundary conditions following the steps as described in Section 3.2.6.
Applying fixities
Since in this example materials are in dry conditions, only the solid phase needs to be considered. Dis-
placements in normal direction will be fixed at all boundaries; which means
3.1 radial planes: fixity in θ -direction (third component);
3.2 circumference surface: fixity in radial direction (first component);
3.3 Top and bottom planes: vertical fixity in y-direction;
Check if the applied conditions are correct as shown in Figure A.5.
Applying loading conditions
A vertical load equal to –100 kPa will be applied in y-direction on the top of the foundation as shown in
Figure A.6.
A.1.5 Defining a surface for computation of reaction forces
Follow the steps in Section 8.2.8 and select for output the surface at the interface between soil and
foundation (see Figure A.7).
Shallow foundation in 3D-cylindrical coordinates 291

Figure A.5: Solid fixities of the shallow foundation problem in GiD.

Figure A.6: Applied load on top of the foundation at the material points.
292 Anura3D MPM Software, Tutorial Manual

Figure A.7: Output reation force.

A.1.6 Defining the moving mesh


The moving mesh input parameters are defined similarly as in Chapter 8.2.9, but in 3D-cylindrical coordi-
nate 6 corner nodes must be specified for each area, i.e. compressing mesh, extending mesh and moving
mesh. The three domain areas must be connected with each other and all elements of the discretised
domain must belong to either one of them.
The following steps have to be taken to define the moving mesh:
3.1 Select "Compressing Mesh" from the drop down menu.
3.2 Click <Assign> and select the 6 corner nodes that delimit the zone that will be compressed by the
movement of the moving mesh as shown in Figure A.8. Note that the volume delimited by these
corner nodes must be a wedge, thus exactly 6 nodes must be selected of which 4 must be on an
external boundary and 2 on the symmetry axis. Alternative shapes of the compressing/extending/-
moving mesh are not allowed.
Shallow foundation in 3D-cylindrical coordinates 293

Figure A.8: Definition of compressing mesh corner nodes.

3.3 In this example no "Extending Mesh" will be used, thus no corner nodes must be selected for this
option.
3.4 Select "Moving Mesh" from the drop down menu.
3.5 Specify the direction of movement. In this example the foundation should move in vertical direction,
thus choose "y-direction" next to "moving mesh direction".
3.6 Click <Assign> and select the 6 corner nodes that delimit the moving mesh as shown in Figure A.9.
3 of these nodes must coincide with the 2 nodes of the compressing mesh, i.e. the nodes of the top
soil surface. The remaining 2 nodes must be on the free boundary, i.e. top surface. Note that when
using both compressing and extending mesh, it is necessary that exactly 3 nodes of the moving
mesh coincide with 3 nodes of the compressing mesh and the remaining 3 nodes coincide with 3
nodes of the extending mesh.
294 Anura3D MPM Software, Tutorial Manual

Figure A.9: Definition of moving mesh corner nodes and direction of movement.

3.7 Define the reference material that will determine the displacement of the moving mesh. Click on the
"volume" symbol on the top of the moving mesh menu.
3.8 Click <Assign> and select the structure surface, i.e. the foundation, as shown in Figure A.10.

Figure A.10: Definition of moving mesh reference material.

It should be noted that the number of corner nodes necessary to identify correctly each moving mesh
zone are:
⋄ 4 corner nodes in 2D models
Shallow foundation in 3D-cylindrical coordinates 295

⋄ 6 corner nodes in 3D-cylindircal models


⋄ 8 corner nodes in 3D-cartesian models
A.1.7 Creating mesh
An unstructured mesh is used for this example. To generate the mesh follow the steps given in Section
6.2.7. For this example set the mean element size to "0.8", and assigned a refined size of 0.5 to the
foundation bottom surface. The mesh should look as shown Figure A.11.

Figure A.11: Computational mesh of the shallow foundation problem in 3D-cylindrical coordi-
nates.
A.1.8 Initialisation of calculation data
The calculation data are identical to those in Chapter 8.3.1, whith the only exception of the Dimension that
should be "‘3D - cylindrical"’ (Fig. A.12).
A.1.9 Generating Input Files
After the geometry, material properties, boundary conditions, and calculation parameters are defined and
the mesh is generated the input files for the Anura3D analysis, i.e. GOM and CPS file, have to be
created. To generate the GOM and CPS files follow steps given in Section 3.2.9.
The generated input files foundation-3Dcylindrical.GOM and foundation-3Dcylindrical.CPS_001
can be found in the new folder foundation-3Dcylindrical.A3D, created in the directory which was
specified earlier by the user (Section 8.2.1):

D:\..\foundation−3Dcylindrical.A3D\foundation−3Dcylindrical.GOM

D:\..\foundation−3Dcylindrical.A3D\foundation−3Dcylindrical.CPS_001

A.1.10 Performing calculation in Anura3D


The calculation can be performed as explained in Section 3.3.
296 Anura3D MPM Software, Tutorial Manual

Figure A.12: Dialogue box to define calculation parameters in GiD for the shallow foundation
problem in 3D - cylindrical coordinates.
Shallow foundation in 3D-cylindrical coordinates 297

A.1.11 Visualisation of results in ParaView


The recommended way to visualise Anura3D results is by using the ParaView software (see Sections 2.5
and 2.1.3). Instructions presented in Section 3.4 can be followed to open and analyse the results from the
shallow foundation problem. Figure A.13 shows the evolution of vertical effective stress.
298 Anura3D MPM Software, Tutorial Manual

(a) (b)

(c) (d)

(e) (f)

Figure A.13: Vertical effective stress after: a) load step 1, b) load step 2, c) load step 3, d) load
step 4, e) load step 5 and f) load step 6.

You might also like