All Classes Files Functions Variables Pages
Getting Started

This page describes how to prepare input files needed to run simulations with EFISPEC3D.

Default hard-coded variables

The file module_global_variables.f90 contains the following default parameters that can be tuned before compilation:

Note
By default, a simulation uses a linear elastic stress-strain relationship. To activate viscoelasticity, set the parameter mod_global_variables::lg_visco to .true.

Prefix file

The hard-coded file named "prefix" contains the prefix of a simulation. All other input files shall be named prefix.ext. See section Files Extension to read more about files' extension.

Here is an example of the content of the file named "prefix"

foo

Mesh file

The mesh file has either the extension .inp for EFISPEC3D version 0.9 or .inp/.ex2 for version 1.0. It should be prepared with the mesh generating tool CUBIT. EFISPEC3D reads ASCII ABAQUS (extension .inp) or binary EXODUS_II (extension .ex2) mesh formats generated by CUBIT.

EFISPEC3D recognizes blocks of hexahedron elements named l01, l02, ..., l99 and blocks of quadrangle elements named prx or fsu that stand for "paraxial" (i.e., absorbing boundary) and "free surface", respectively.

Paraxial quadrangle elements are used for wave absorption on the domain's boundaries. Free surface quadrangle elements define the free surface of the domain. They are used to compute snapshots of the free surface or to locate receivers defined only by \(x,y\)-coordinates.

Warning
Blocks prx and fsu and at least the block l01 must be defined.
CUBIT is only used to generate the finite-element mesh. Material properties of blocks need not to be defined in CUBIT. They will be defined in file .cfg (see section Configuration file).
Note
For exporting .inp mesh, the command line is:
export abaqus "filename.inp" block all dimension 3
For exporting .ex2 mesh, the command line is:
export mesh "filename.ex2" block all dimension 3

An example of CUBIT journal file foo.jou to generate to simple layer over half space mesh is given below:

reset

create brick x 58000.0 y 58000.0 z 34000.0
volume 1 move 0.0 0.0 -17000.0

webcut volume 1 with zplane offset -1000.0

#all surfaces "surf_all" --> Group 2
group 'surf_all' add surface all

#overlaping surfaces "surf_overlap" in Group 3
find surface overlap volume all

#free surfaces in group "surf_free" --> Group 4
group 'surf_free' add surface 1

#parax surfaces in group "surf_parax" --> Group 5
group 'surf_parax' subtract group 4 from group 2
group 'surf_parax' subtract group 3 from group 5

imprint all
merge all

block 1 volume 1
block 1 name "l01"
block 2 volume 2
block 2 name "l02"
block 3 group surf_parax
block 3 name "prx"
block 4 group surf_free
block 4 name "fsu"

volume 2 size 1500.0
mesh volume 2
refine node in face in surface 7
volume 1 size 500.0
mesh volume 1

draw volume all
export abaqus "./foo.inp" block all dimension 3 overwrite  #export in ABAQUS mesh format
export mesh   "./foo.ex2" block all dimension 3 overwrite  #export in EXODUS_II mesh format

Configuration file

The configuration file has the extension .cfg. It defines general variables of a simulation. The following keywords are mandatory (case insensitive, space insensitive):

Warning
Materials' number must correspond to CUBIT blocks' name: The block named "l01" in the .inp file corresponds to "material = 1" in the .cfg file, and so on.

The following keywords are optional (case insensitive, space insensitive):

Note
Keywords must be followed by '= value'.
Lines with unrecognized keywords will be automatically skipped so that any comments can be added.

Here is an example of a configuration file foo.cfg for the mesh file foo.inp (or foo.ex2) defined above that contains two blocks of material. This example of configuration file contains all keywords (mandatory and optional).

!*******************************************
!time information
!*******************************************
duration of simulation         = 5.0
time step                      = 4.0e-3

!*******************************************
!receivers output
!*******************************************
receiver saving increment      = 2

!*******************************************
!surface snapshots output
!*******************************************
snapshot saving  increment     = 10
snapshot space   increment     = 500.0
snapshot displacement          = .false.
snapshot velocity              = .true.
snapshot acceleration          = .false.


!******************************************
!volume snapshots output
!******************************************
volume snapshot saving  increment = 100 
volume snapshot displacement      = .false.
volume snapshot velocity          = .false.
volume snapshot acceleration      = .false.
volume snapshot xmin              = 0.0 
volume snapshot xmax              = 0.0
volume snapshot ymin              = 0.0
volume snapshot ymax              = 0.0
volume snapshot zmin              = 0.0
volume snapshot zmax              = 0.0


!*******************************************
!boundary absorption information
!*******************************************
boundary absorption            = .true.

!*******************************************
!medium information
!*******************************************
number of material             = 2

material                       = 1
vs                             = 2000.0
vp                             = 4000.0
rho                            = 2600.0
Qs                             =   10.0
Qp                             =  100.0
Qf                             =    1.0

material                       = 2
vs                             = 3464.0
vp                             = 6000.0
rho                            = 2700.0
Qs                             =   10.0
Qp                             =  100.0
Qf                             =    1.0

Sources files

The sources files have the extensions .dcs and .sfs. They define double couple point sources and single force point sources, respectively.

The file .dcs has the following format

N
x1 y1 z1 mw1 s1 d1 r1 ts1 tr1 f1
...
xi yi zi mwi si di ri tsi tri fi
...
xN yN zN mwN sN dN rN tsN trN fN

with

Here is an example of a file foo.dcs which contains three arbitrary double couple point sources

3
     0.0       0.0   -1000.0   6.0    0.0   90.0   0.0   5.0   2.0   8
  5000.0       0.0   -5000.0   3.5   20.0   75.0  10.0  10.0   3.0   6
-10000.0   -5000.0   -8000.0   4.2  230.0    5.0  10.0   8.0   1.5   8

The file .sfs has the following format

N
x1 y1 z1 a1 d1 ts1 tr1 f1
...
xi yi zi ai di tsi tri fi
...
xN yN zN aN dN tsN trN fN

with

Here is an example of a file foo.sfs which contains two arbitrary single force point sources

2
     0.0       0.0       0.0  10.0    1     5.0   2.0   8
  5000.0       0.0   -5000.0  -1.0    3     3.0   1.0   9

Receivers files

The receivers files have the extensions .fsr and .vor. They define free surface receivers and volume receivers, respectively. Free surface receivers are searched inside the free surface quadrangle elements defined by CUBIT block named fsu. Volume receivers are searched inside CUBIT blocks named lxx.

The file .fsr has the following format

x1 y1
...
xi yi
...
xN yN

with

Note
The total number N of receivers is not needed: EFISPEC3D reads all the lines. Be careful not to leave blank lines in the file .fsr

Here is an example of a file foo.fsr which contains 9 free surface receivers

  693.0     0.0
  5543.0    0.0
  10392.0   0.0
  490.0     490.0
  3919.0    3919.0
  7348.0    7348.0
  384.0     577.0
  3075.0    4612.0
  5764.0    8647.0

The file .vor has the following format

x1 y1 z1
...
xi yi zi
...
xN yN zN

with

Note
The total number N of receivers is not needed: EFISPEC3D reads all the lines. Be careful not to leave blank lines in the file .vor

Here is an example of a file foo.vor which contains 3 volume receivers

  693.0      0.0    -100.0
  10392.0   10.0   -1000.0
  10392.0 -500.0   -2000.0