Project

General

Profile

iSALEMat

The broad variety of different strength and material models included in iSALE allows for a realistic simulation of material behavior. However, this results in a large number of different possible input-parameters and, thus, complicates the simulation setup - not only for unexperienced users. The most common questions are
  • which material models can be combined which each other?
  • which parameters do I need to set for my current choice of material and strength models?

iSALEMat is a tool designed to support users in answering these questions. The following sections describe how to use iSALEMat properly.

For command-line information about this tool, invoke:

./iSALEMat --help

Original setup

For this small tutorial we use the Chicxulub-example provided for iSALE-2D as reference.

cd <prefix>/share/examples/Chicxulub

This example calculates the impact of a granite projectile into a layer composed of calcite (thin top layer), granite and dunite:

------------------- Projectile ("Object") Parameters --------------------
OBJNUM                number of objects             : 1
OBJMAT                object material               : granite
OBJTYPE               object type                   : SPHEROID
------------------- Target Parameters ----------------------------------
LAYNUM                layers number                 : 3
LAYPOS                layer position                : 103         : 178         : 185
LAYMAT                layer material                : dunite_     : granite     : calcite

Hence, there are three different materials included in the simulation: granite, calcite, and dunite. The corresponding material input file (material.inp) must contain information for all these three materials. For the Chicxulub-example, it looks as follows:

-----------------------------------------------------------------------------
MATNAME    Material name          : granite      : dunite_      : calcite
EOSNAME    EOS name               : granit2      : dunite_      : calcite
EOSTYPE    EOS type               : aneos        : aneos        : aneos
STRMOD     Strength model         : ROCK         : ROCK         : ROCK
DAMMOD     Damage model           : IVANOV       : IVANOV       : IVANOV
ACFL       Acoustic fluidisation  : BLOCK        : BLOCK        : BLOCK
PORMOD     Porosity model         : NONE         : NONE         : NONE
THSOFT     Thermal softening      : OHNAKA       : OHNAKA       : OHNAKA
LDWEAK     Low density weakening  : POLY         : POLY         : POLY
----------------------------------------------------------------------------
POIS       pois                   : 3.0000D-01   : 2.5000D-01   : 3.0000D-01
----------------------------------------------------------------------------
TMELT0     tmelt0                 : 1.6730D+03   : 1.3730D+03   : 1.5000D+03
CHEAT      C_heat                 : 1.0000D+03   : 1.0000D+03   : 1.0000D+03
TFRAC      tfrac                  : 1.2000D+00   : 1.2000D+00   : 1.2000D+00
ASIMON     a_simon                : 6.0000D+09   : 1.5200D+09   : 6.0000D+09
CSIMON     c_simon                : 3.0000D+00   : 4.0500D+00   : 3.0000D+00
----------------------------------------------------------------------------
YDAM0      ydam0 (ycoh)           : 1.0000D+04   : 1.0000D+04   : 1.0000D+04
FRICDAM    fricdam                : 6.0000D-01   : 6.0000D-01   : 4.0000D-01
YLIMDAM    ylimdam                : 2.5000D+09   : 3.5000D+09   : 5.0000D+08
----------------------------------------------------------------------------
YINT0      yint0                  : 1.0000D+07   : 1.0000D+07   : 5.0000D+06
FRICINT    fricint                : 2.0000D+00   : 1.2000D+00   : 1.0000D+00
YLIMINT    ylimint                : 2.5000D+09   : 3.5000D+09   : 5.0000D+08
----------------------------------------------------------------------------
IVANOV_A   Damage parameter       : 1.0000D-04   : 1.0000D-04   : 1.0000D-04
IVANOV_B   Damage parameter       : 1.0000D-11   : 1.0000D-11   : 1.0000D-11
IVANOV_C   Damage parameter       : 3.0000D+08   : 3.0000D+08   : 3.0000D+08
----------------------------------------------------------------------------
GAMETA     gam_eta                : 8.0000D-03   : 8.0000D-02   : 0.0000D-03
GAMBETA    gam_beta               : 1.1500D+02   : 0.5000D+02   : 0.0000D+02
----------------------------------------------------------------------------

If you are not (yet) familiar with the different material models and the structure of the material.inp file, please read this description first, before continuing.

Changing a material

In this tutorial, we want to demonstrate how to use other materials than those initially defined in material.inp. Let us assume we want to replace the uppermost calcite layer by a shallow water layer.

First, we replace the corresponding information in asteroid.inp:

------------------- Target Parameters ----------------------------------
LAYNUM                layers number                 : 3
LAYPOS                layer position                : 103         : 178         : 185
LAYMAT                layer material                : dunite_     : granite     : water__

Now we move on with material.inp. In the second step, we adjust the material name and the name of the eos:

MATNAME    Material name                  : granite      : dunite_      : water__
EOSNAME    EOS name                       : granit2      : dunite_      : water__

Next, we adjust all the corresponding material and strength models for this material. In this case - for water - we select HYDRO as a strength model (hydrodynamic treatment of material, no strength at all), and we do not select any damage, porosity, or acoustic fluidization model at all:

MATNAME    Material name                  : granite      : dunite_      : water__
EOSNAME    EOS name                       : granit2      : dunite_      : water__
EOSTYPE    EOS type                       : aneos        : aneos        : aneos
STRMOD     Strength model                 : ROCK         : ROCK         : NONE
DAMMOD     Damage model                   : IVANOV       : IVANOV       : NONE
ACFL       Acoustic fluidisation          : BLOCK        : BLOCK        : NONE
PORMOD     Porosity model                 : NONE         : NONE         : NONE
THSOFT     Thermal softening              : OHNAKA       : OHNAKA       : OHNAKA
LDWEAK     Low density weakening          : POLY         : POLY         : POLY

Now, we call iSALEMat:

./iSALEMat

In this step, iSALEMat reads some information from asteroid.inp, such as the number of materials and the material names. It now checks whether a column for this material has been defined in material.inp. Afterwards, it reads the header for each material separately. It checks whether the models defined are valid and includes all necessary parameters in the list below the header. Parameters not required for a certain material are marked with 'xxxxxxxxxxxx' or (if it is not required by any of the defined materials) omitted:

MATNAME    Material name                  : granite      : dunite_      : water__
EOSNAME    EOS name                       : granit2      : dunite_      : water__
EOSTYPE    EOS type                       : aneos        : aneos        : aneos
STRMOD     Strength model                 : ROCK         : ROCK         : HYDRO
DAMMOD     Damage model                   : IVANOV       : IVANOV       : NONE
ACFL       Acoustic fluidisation          : BLOCK        : BLOCK        : NONE
PORMOD     Porosity model                 : NONE         : NONE         : NONE
THSOFT     Thermal softening              : OHNAKA       : OHNAKA       : OHNAKA
LDWEAK     Low density weakening          : POLY         : POLY         : POLY
--------------------------------------------------------------------------------
---------general parameters ----------------------------------------------------
POIS       pois                           : 3.D-01       : 2.5D-01      : 5.D-01
VISC       viscosity                      : xxxxxxxxxxxx : xxxxxxxxxxxx : 0.D+00
---------thermal softening -----------------------------------------------------
TFRAC      tfrac                          : 1.2D+00      : 1.2D+00      : xxxxxxxxxxxx
---------thermal parameters ----------------------------------------------------
TMELT0     tmelt0                         : 1.673D+03    : 1.373D+03    : xxxxxxxxxxxx
CHEAT      C_heat                         : 1.D+03       : 1.D+03       : 1.D+03
ASIMON     a_simon                        : 6.D+09       : 1.52D+09     : xxxxxxxxxxxx
CSIMON     c_simon                        : 3.D+00       : 4.05D+00     : xxxxxxxxxxxx
---------shear strength of intact material -------------------------------------
YINT0      yint0                          : 1.D+07       : 1.D+07       : xxxxxxxxxxxx
FRICINT    fricint                        : 2.D+00       : 1.2D+00      : xxxxxxxxxxxx
YLIMINT    ylimint                        : 2.5D+09      : 3.5D+09      : xxxxxxxxxxxx
---------shear strength of damaged material ------------------------------------
YDAM0      ydam0 (ycoh)                   : 1.D+04       : 1.D+04       : xxxxxxxxxxxx
FRICDAM    fricdam                        : 6.D-01       : 6.D-01       : xxxxxxxxxxxx
YLIMDAM    ylimdam                        : 2.5D+09      : 3.5D+09      : xxxxxxxxxxxx
---------shear damage (Ivanov) -------------------------------------------------
IVANOV_A   Damage parameter               : 1.D-04       : 1.D-04       : xxxxxxxxxxxx
IVANOV_B   Damage parameter               : 1.D-11       : 1.D-11       : xxxxxxxxxxxx
IVANOV_C   Damage parameter               : 3.D+08       : 3.D+08       : xxxxxxxxxxxx
---------acoustic fluidization (block model) -----------------------------------
GAMETA     gam_eta                        : 8.D-03       : 8.D-02       : xxxxxxxxxxxx
GAMBETA    gam_beta                       : 1.15D+02     : 5.D+01       : xxxxxxxxxxxx

As you can see, this simple hydrodynamic setting for water does only require three input parameters: The poisson ratio, a viscosity value and the heat capacity.

In the final step, look carefully through the generated material.inp and modify the material properties, if necessary.