![]() |
This page describes how to prepare input files needed to run simulations with EFISPEC3D.
The file module_global_variables.f90 contains the following default parameters that can be tuned before compilation:
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
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.
export abaqus "filename.inp" block all dimension 3
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
The configuration file has the extension .cfg. It defines general variables of a simulation. The following keywords are mandatory (case insensitive, space insensitive):
The following keywords are optional (case insensitive, space insensitive):
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
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
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
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
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