[cig-commits] [commit] devel, master: updated example README files (e7e6b7d)
cig_noreply at geodynamics.org
cig_noreply at geodynamics.org
Wed Jun 18 16:48:20 PDT 2014
Repository : https://github.com/geodynamics/specfem3d
On branches: devel,master
Link : https://github.com/geodynamics/specfem3d/compare/6026e367984905ab133865f62fa6293b343759b9...47f703851338234f96397e7da9fbff63d8178b8a
>---------------------------------------------------------------
commit e7e6b7dce2d6ed61c3de748607fd164f22a6c1b2
Author: Carl Tape <carltape at gi.alaska.edu>
Date: Wed Feb 2 05:54:04 2011 +0000
updated example README files
>---------------------------------------------------------------
e7e6b7dce2d6ed61c3de748607fd164f22a6c1b2
homogeneous_halfspace/README | 56 ++++++++++++++++++++---------------
layered_halfspace/README | 69 ++++++++++++++++++++++---------------------
tomographic_model/README | 35 +++++++++++-----------
waterlayered_halfspace/README | 33 +++++++++++----------
4 files changed, 103 insertions(+), 90 deletions(-)
diff --git a/homogeneous_halfspace/README b/homogeneous_halfspace/README
index a0c1c07..e0f466f 100644
--- a/homogeneous_halfspace/README
+++ b/homogeneous_halfspace/README
@@ -24,17 +24,25 @@ step-by-step tutorial:
note: the same compiler used for SCOTCH must be used for SPECFEM3D (ifort or gfortran)
- - copy two run scripts from utils/Cluster/ into SPECFEM3D/, e.g.,
+ - copy three run scripts from utils/Cluster/ into SPECFEM3D/, e.g.,
+ pbs/go_decomposer_pbs.bash
pbs/go_generate_databases_pbs.bash
pbs/go_solver_pbs.bash
+ note: you may need to adjust the commands (e.g., -q or -l)
-2. create mesh:
- - change to the examples directory SPECFEM3D/examples/homogeneous_halfspace:
- > cd examples/homogeneous_halfspace
+2. copy three input files from examples directory into SPECFEM3D/in_data_files/
+
+ > cd examples/homogeneous_halfspace/in_data_files/
+ > cp CMTSOLUTION Par_file STATIONS ../../../in_data_files/
+
+
+3. create mesh:
+
+ - from the directory SPECFEM3D/examples/homogeneous_halfspace,
+ open the cubit GUI:
- - open the cubit GUI:
> claro (or cubit)
then run meshing script:
@@ -55,44 +63,43 @@ step-by-step tutorial:
the cubit graphics window should show a mesh similar to the file homogeneous.png
-3. decompose mesh files:
+4. decompose mesh files:
- compile decomposer in directory SPECFEM3D/:
> make xdecompose_mesh_SCOTCH
- - run decomposer
- (example assumes 4 partitions with mesh files in examples/homogeneous_halfspace/MESH/)
- > ./bin/xdecompose_mesh_SCOTCH 4 examples/homogeneous_halfspace/MESH/ in_out_files/DATABASES_MPI/
-
- this creates mesh partitions "proc000***_Database" in directory in_out_files/DATABASES_MPI/.
+ - run decomposer:
+ > qsub go_decomposer_pbs.bash
- you can then specify "../in_out_files/DATABASES_MPI" in "Par_file" for your "LOCAL_PATH".
+ note: this script will need to be tailored to your cluster, e.g.,
+ > bsub < go_decomposer_lsf.bash
- (for your convenience, these resulting database files are also provided in the example's
- DATABASES-default/ directory for comparison.)
+ this creates mesh partitions "proc000***_Database" in directory in_out_files/DATABASES_MPI/.
+ the output file in_out_files/*.o contains information on the partitioning
note 1: the program xdecompose_mesh_SCOTCH is a serial program (runs on 1 core)
- note 2: alternatively, run decomposer on a compute node using
- utils/Cluster/pbs/go_partition_pbs.bash
+ note 2: for small jobs (like this one), you can simply launch the job on
+ the local node from directory SPECFEM3D:
+
+ > ./bin/xdecompose_mesh_SCOTCH 4 examples/homogeneous_halfspace/MESH/ in_out_files/DATABASES_MPI/
-4. generate databases:
+5. generate databases:
- - compile generate_databases in directory SPECFEM3D/ :
+ - compile generate_databases in directory SPECFEM3D/:
> make xgenerate_databases
- - submit job script
+ - submit job script:
> qsub go_generate_databases_pbs.bash
- note 1: this script will need to be tailored to your cluster, e.g.,
+ note: this script will need to be tailored to your cluster, e.g.,
> bsub < go_generate_databases_lsf.bash
- note 2: you may want to explicity specify the desired queue
this will create binary mesh files, e.g. "proc000***_external_mesh.bin"
in directory in_out_files/DATABASES_MPI/.
-5. run simulation:
+6. run simulation:
- compile specfem3D:
> make xspecfem3D
@@ -106,12 +113,13 @@ step-by-step tutorial:
and you can track the progress with the timestamp files
generated in in_out_files/OUTPUT_FILES/
+ - the job should take a couple minutes
- when the job is complete, you should have 3 sets (semd,semv,sema)
of 18 (ls -1 *semd | wc) seismogram files in the directory in_out_files/OUTPUT_FILES,
as well as 3 timestamp****** files
-6. check with 6 reference seismograms in
+7. check with 6 reference seismograms in
SPECFEM3D/examples/homogeneous_halfspace/REF_SEIS/
- execute gnuplot script
@@ -136,7 +144,7 @@ step-by-step tutorial:
gnuplot> quit
-7. plot your output seismograms in SPECFEM3D/in_out_files/OUTPUT_FILES/
+8. plot your output seismograms in SPECFEM3D/in_out_files/OUTPUT_FILES/
- copy gnuplot script X1-50.BXZ.gnuplot to in_out_files/OUTPUT_FILES/
- execute same commands as above
diff --git a/layered_halfspace/README b/layered_halfspace/README
index 2224b7a..e4743ba 100644
--- a/layered_halfspace/README
+++ b/layered_halfspace/README
@@ -11,20 +11,28 @@ step-by-step tutorial:
0. run the example in the directory homogeneous_halfspace
-1. create mesh:
+1. copy three input files from examples directory into SPECFEM3D/in_data_files/:
+
+ > cd examples/layered_halfspace/in_data_files/
+ > cp CMTSOLUTION Par_file STATIONS ../../../in_data_files/
+
+
+2. create mesh:
+
+ - from the directory SPECFEM3D/examples/layered_halfspace,
+ open cubit GUI:
- - run cubit GUI:
> claro
then run meshing script:
claro -> Menu "Tools" -> "Play Journal File" ... and select file: "2lay_mesh_boundary_fig8.py"
(or select: "2lay_mesh_boundary_fig8-nodoubling.py" for regular mesh without doubling layer)
-open read_cubit_
+
this creates all the mesh files in subdirectory MESH/
- - optional: check mesh quality using check_mesh_quality_CUBIT_Abaqus.f90
+ - optional: check mesh quality using check_mesh_quality_CUBIT_Abaqus.f90
using the CUBIT GUI:
claro -> Menu "File" -> "Export...", select Abaqus (*.inp)
@@ -37,28 +45,26 @@ open read_cubit_
alternatively, using the CUBIT command line:
> export Abaqus "layered_halfspace_mesh.inp" Block 1,2,3 overwrite cubitids
- change directory
- > cd ../..//src/check_mesh_quality_CUBIT_Abaqus/
+ change directory:
+ > cd ../../src/check_mesh_quality_CUBIT_Abaqus/
save number of nodes and number of elements and edit in header of
check_mesh_quality_CUBIT_Abaqus.f90:
- character(len=100), parameter :: cubit_mesh_file = 'layered_halfspace_mesh.inp'
- integer, parameter :: NPOIN = 76819 ! number of nodes
- integer, parameter :: NSPEC = 70200 ! number of elements (only volumes, i.e. block ids 1,2,3 )
- integer, parameter :: NGNOD = 8 ! hexahedral elements
- logical, parameter :: IGNORE_OTHER_HEADERS = .false.
- double precision, parameter :: delta_t = 0.005 ! arbitrary, initial guess
- double precision, parameter :: VP_MAX = 7500.d0 ! maximum vp in volume block id 3
+ character(len=100), parameter :: cubit_mesh_file = 'examples/layered_halfspace/layered_halfspace_mesh.inp'
+ integer, parameter :: NPOIN = 76819 ! number of nodes
+ integer, parameter :: NSPEC = 70200 ! number of elements (only volumes, i.e. block ids 1,2,3 )
+ integer, parameter :: NGNOD = 8 ! hexahedral elements
+ logical, parameter :: IGNORE_OTHER_HEADERS = .false.
+ double precision, parameter :: delta_t = 0.005 ! arbitrary, initial guess
+ double precision, parameter :: VP_MAX = 7500.d0 ! maximum vp in volume block id 3
- link Abaqus file
- > ln -s ../../examples/layered_halfspace/layered_halfspace_mesh.inp .
+ compile programs in SPECFEM3D:
+ > cd ../../
+ > make xcheck_mesh_quality_CUBIT_Abaqus
- compile programs
- > make
-
- run program
- > ../../bin/xcheck_mesh_quality_CUBIT_Abaqus
+ run program:
+ > ./bin/xcheck_mesh_quality_CUBIT_Abaqus
at prompts, enter, for example, 1, then 0.6 to list elements with high skewness
plot skewness histogram as ps file
@@ -69,24 +75,20 @@ open read_cubit_
> replot
> quit
-2. decompose mesh files:
- - run decomposer in directory bin/:
- (example assumes 4 partitions with mesh files in examples/layered_halfspace/MESH/)
- > cd SPECFEM3D
- > make
- > ./bin/xdecompose_mesh_SCOTCH 4 examples/layered_halfspace/MESH/ in_out_files/DATABASES_MPI/
+3. decompose mesh files:
+
+ - set mesh directory in go_decomposer_pbs.bash to:
+ MESHDIR=examples/layered_halfspace/MESH/
+
+ - run decomposer:
+ > qsub go_decomposer_pbs.bash
which creates mesh partitions "proc0000***_Database" in directory "DATABASES_MPI".
you can then specify "../in_out_files/DATABASES_MPI" in "Par_file" for your "LOCAL_PATH"
-3. generate databases:
-
- - copy example files Par_file, CMTSOLUTION & STATIONS to SPECFEM3D/in_data_files/
- > cd examples/layered_halfspace/in_data_files
- > cp CMTSOLUTION Par_file STATIONS ../../../in_data_files/
- > cd SPECFEM3D
+4. generate databases:
- compile generate_databases:
> make xgenerate_databases
@@ -102,7 +104,8 @@ open read_cubit_
optional: load a set of .vtk files into paraview to view model, mesh, and partitioning
(note: must have Par_file option SAVE_MESH_FILES = .true.)
-4. run simulation:
+
+5. run simulation:
- modify src/shared/constants.h:
to use a vertical force source, with a Ricker wavelet source time function,
diff --git a/tomographic_model/README b/tomographic_model/README
index 7c920c8..6d345a5 100644
--- a/tomographic_model/README
+++ b/tomographic_model/README
@@ -9,12 +9,15 @@ step-by-step tutorial:
0. run the example in the directory homogeneous_halfspace
-1. create mesh:
+1. copy three input files from examples directory into SPECFEM3D/in_data_files/:
+ > cd examples/tomographic_model/in_data_files/
+ > cp CMTSOLUTION Par_file STATIONS ../../../in_data_files/
- - change to the examples directory SPECFEM3D/examples/tomographic_model:
- > cd examples/tomographic_model
- - open the cubit GUI:
+2. create mesh:
+
+ - from the directory SPECFEM3D/examples/tomographic_model,
+ open the cubit GUI:
> claro (or cubit)
then run meshing script:
@@ -24,7 +27,7 @@ step-by-step tutorial:
note: this is a simple uniform block mesh
-2. create tomography_model file:
+3. create tomography_model file:
- in examples/tomographic_model, run bash script:
> sh create_tomography_model_file.sh
@@ -32,31 +35,27 @@ step-by-step tutorial:
which creates an example model: tomography_model.xyz
( elastic model with a constant velocity gradient with depth)
- - copy this file into directory SPECFEM3D/in_data_files/
+ - copy (or link) this file into directory SPECFEM3D/in_data_files/
> cp tomography_model.xyz ../../in_data_files/
+
note: this file is read in by subroutine read_model_tomography in
SPECFEM3D/src/generate_databases/model_tomography.f90,
which is called by get_model.f90
- - copy Par_file, CMTSOLUTION & STATIONS files provided in this examples directory to SPECFEM3D/in_data_files/
- > cd in_data_files/
- > cp * ../../../in_data_files/
- note: these are needed prior to running xgenerate_databases
+4. decompose mesh files:
-3. decompose mesh files:
+ - set mesh directory in go_decomposer_pbs.bash to:
+ MESHDIR=examples/tomographic_model/MESH/
- - run decomposer
- (example assumes 4 partitions with mesh files in examples/tomographic_model/MESH/)
- > cd SPECFEM3D
- > make
- > ./bin/xdecompose_mesh_SCOTCH 4 examples/tomographic_model/MESH/ in_out_files/DATABASES_MPI/
+ - run decomposer:
+ > qsub go_decomposer_pbs.bash
which creates mesh partitions "proc0000***_Database" in directory "DATABASES_MPI".
you can then specify "../in_out_files/DATABASES_MPI" in "Par_file" for your "LOCAL_PATH"
-4. generate databases:
+5. generate databases:
- compile generate_databases from SPECFEM3D/ :
> make xgenerate_databases
@@ -65,7 +64,7 @@ step-by-step tutorial:
> qsub go_generate_databases_pbs.bash
-5. run simulation:
+6. run simulation:
- compile specfem3D:
> make xspecfem3D
diff --git a/waterlayered_halfspace/README b/waterlayered_halfspace/README
index acd83e2..4c8d11f 100644
--- a/waterlayered_halfspace/README
+++ b/waterlayered_halfspace/README
@@ -11,7 +11,13 @@ step-by-step tutorial:
0. run the example in the directory homogeneous_halfspace
-1. create mesh:
+1. copy three input files from examples directory into SPECFEM3D/in_data_files/
+
+ > cd examples/waterlayered_halfspace/in_data_files/
+ > cp CMTSOLUTION Par_file STATIONS ../../../in_data_files/
+
+
+2. create mesh:
- run cubit GUI:
> claro
@@ -24,24 +30,19 @@ step-by-step tutorial:
this creates all the mesh files in subdirectory MESH/
-2. decompose mesh files:
+3. decompose mesh files:
- - run decomposer
- (example assumes 4 partitions with mesh files in examples/waterlayered_halfspace/MESH/)
- > cd SPECFEM3D
- > make
- > ./bin/xdecompose_mesh_SCOTCH 4 examples/waterlayered_halfspace/MESH/ in_out_files/DATABASES_MPI/
+ - set mesh directory in go_decomposer_pbs.bash to:
+ MESHDIR=examples/waterlayered_halfspace/MESH/
+
+ - run decomposer:
+ > qsub go_decomposer_pbs.bash
which creates mesh partitions "proc0000***_Database" in directory "DATABASES_MPI".
you can then specify "../in_out_files/DATABASES_MPI" in "Par_file" for your "LOCAL_PATH"
-3. generate databases:
-
- - copy Par_file, CMTSOLUTION & STATIONS files provided in this examples directory to SPECFEM3D/in_data_files/
- > cd examples/waterlayered_halfspace/in_data_files
- > cp CMTSOLUTION Par_file STATIONS ../../../in_data_files/
- > cd SPECFEM3D
+4. generate databases:
- compile generate_databases:
> make xgenerate_databases
@@ -49,11 +50,13 @@ step-by-step tutorial:
- submit job script:
> qsub go_generate_databases_pbs.bash
- (note: if execution fails due to memory shortage - most likely fails when calling routine to
+ this will create binary mesh files, e.g. "proc000***_external_mesh.bin"
+ in directory in_out_files/DATABASES_MPI/.
+ (note: if execution fails due to memory shortage - most likely fails when calling routine to
create regional mesh - then try to increase process memory stack size: ulimit -s 2000000 (2GB) )
-4. run simulation:
+5. run simulation:
- compile specfem3D:
> make xspecfem3D
More information about the CIG-COMMITS
mailing list