[cig-commits] [commit] devel,master: updates SPECFEM3D manual and example readme files; bug fixes coupling surface detection for single layer cases (c98490c)
cig_noreply at geodynamics.org
cig_noreply at geodynamics.org
Wed Jun 18 16:47:40 PDT 2014
Repository : https://github.com/geodynamics/specfem3d
On branches: devel,master
Link : https://github.com/geodynamics/specfem3d/compare/6026e367984905ab133865f62fa6293b343759b9...47f703851338234f96397e7da9fbff63d8178b8a
>---------------------------------------------------------------
commit c98490c1b580d5c0e7a22fd756574b7ccaac2b77
Author: Daniel Peter <peterda at ethz.ch>
Date: Thu Nov 18 21:35:57 2010 +0000
updates SPECFEM3D manual and example readme files; bug fixes coupling surface detection for single layer cases
>---------------------------------------------------------------
c98490c1b580d5c0e7a22fd756574b7ccaac2b77
homogeneous_halfspace/README | 14 +++++++-----
homogeneous_halfspace/README_kernel | 28 ++++++++++++++++++------
homogeneous_halfspace/STATIONS | 4 ++++
homogeneous_halfspace/STATIONS_ADJOINT | 2 +-
layered_halfspace/README | 4 +++-
meshfem3D_examples/many_interfaces/Mesh_Par_file | 12 +++++-----
meshfem3D_examples/many_interfaces/README | 10 +++++++--
meshfem3D_examples/simple_model/README | 11 ++++++++--
tomographic_model/README | 3 +++
waterlayered_halfspace/README | 4 ++++
10 files changed, 68 insertions(+), 24 deletions(-)
diff --git a/homogeneous_halfspace/README b/homogeneous_halfspace/README
index a86ecbf..a4687fe 100644
--- a/homogeneous_halfspace/README
+++ b/homogeneous_halfspace/README
@@ -2,6 +2,9 @@
README
----------------------------------------------------------------------
+This examples creates a homogeneous halfspace, i.e. a single volume block with a
+constant elastic material property, using CUBIT and runs a forward simulation.
+
step-by-step tutorial:
0. check that all software is available (or that modules are loaded):
@@ -55,14 +58,18 @@ step-by-step tutorial:
3. decompose mesh files:
- compile decomposer in directory SPECFEM3D/:
- > make
+ > 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/.
- (you can then specify "../in_out_files/DATABASES_MPI" in "Par_file" for your "LOCAL_PATH")
+
+ you can then specify "../in_out_files/DATABASES_MPI" in "Par_file" for your "LOCAL_PATH".
+
+ (for your convenience, these resulting database files are also provided in the example's
+ DATABASES-default/ directory for comparison.)
4. generate databases:
@@ -83,9 +90,6 @@ step-by-step tutorial:
5. run simulation:
- - copy three files -- Par_file CMTSOLUTION STATIONS -- from
- SPECFEM3D/examples/homogeneous_halfspace/ to SPECFEM3D/in_data_files/
-
- compile specfem3D:
> make xspecfem3D
diff --git a/homogeneous_halfspace/README_kernel b/homogeneous_halfspace/README_kernel
index 3cc553d..2fc27d9 100644
--- a/homogeneous_halfspace/README_kernel
+++ b/homogeneous_halfspace/README_kernel
@@ -2,6 +2,9 @@
README - single travel-time adjoint kernel
----------------------------------------------------------------------
+This example creates a travel-time adjoint source for a single receiver
+station and runs a kernel simulation.
+
note: make yourself familiar with how to run a forward simulation.
a detailed step-by-step tutorial is given in the file
/SPECFEM3D/examples/homogeneous_halfspace/README
@@ -21,12 +24,14 @@ step-by-step kernel tutorial:
> ./UTILS/change_simulation_type.pl -F
or change manually in /SPECFEM3D/in_data_files/Par_file:
+ ...
# forward or adjoint simulation
SIMULATION_TYPE = 1
SAVE_FORWARD = .true.
+ ...
- run the forward simulation, submitting the job script:
- > qsub go_solver_pbs.sesame.bash
+ > qsub go_solver_pbs.bash
you should have now the necessary seismograms in directory in_out_files/OUTPUT_FILES/:
...
@@ -46,7 +51,7 @@ step-by-step kernel tutorial:
e.g. using the seismograms from station 20, and create the
corresponding adjoint source files:
> cd /SPECFEM3D
- > ./UTILS/cut_velocity/xcut_velocity 15. 21. 0 in_out_files/OUTPUT_FILES/X20.DB.BH*.semd
+ > ./UTILS/cut_velocity/xcut_velocity 10. 25. 0 in_out_files/OUTPUT_FILES/X20.DB.BH*.semd
- make designated directory for adjoint sources:
> mkdir in_out_files/SEM/
@@ -78,7 +83,7 @@ step-by-step kernel tutorial:
- run the backward simulation, submitting the job script:
- > qsub go_solver_pbs.sesame.bash
+ > qsub go_solver_pbs.bash
this will create adjoint kernel files in directory in_out_files/DATABASES_MPI/
@@ -92,14 +97,23 @@ step-by-step kernel tutorial:
- visualize with Paraview, e.g. :
+ > cd /SPECFEM3D
+ > make xcombine_vol_data
+ > cd bin/
+ > ./xcombine_vol_data 0 3 kappa_kernel ../in_out_files/DATABASES_MPI/ ../in_out_files/OUTPUT_FILES/ 1
- > ./xcombine_vol_data slices.txt kappa_kernel in_out_files/DATABASES_MPI/ in_out_files/OUTPUT_FILES/ 1
+ where we use the partitions with id 0 to 3 to include all 4 processor partitions.
- where slices.txt contains numbers from 0 to 3 to include all 4 processor partitions
- > mesh2vtu.pl -i in_out_files/OUTPUT_FILES/kappa_kernel.mesh -o in_out_files/OUTPUT_FILES/kappa_kernel.vtu
+ To convert the mesh format to VTK, you can use utils/Visualization/Paraview/mesh2vtu:
+ > cd utils/Visualization/Paraview/mesh2vtu
+ Modify the Makefile according to your library paths and compile mesh2vtu:
+ > make
+ the modify the paths to your mesh2vtu installation in the utils/Visualization/Paraview/mesh2vtu.pl file,
+ and run:
+ > mesh2vtu.pl -i in_out_files/OUTPUT_FILES/kappa_kernel.mesh -o in_out_files/OUTPUT_FILES/kappa_kernel.vtu
- which creates the *.vtu file: Paraview -> Menu File -> Open ...
+ which creates the *.vtu file: Paraview -> Menu File -> Open ...
(and choose the kappa_kernel.vtu)
diff --git a/homogeneous_halfspace/STATIONS b/homogeneous_halfspace/STATIONS
index 7c4d08be..f0c3267 100644
--- a/homogeneous_halfspace/STATIONS
+++ b/homogeneous_halfspace/STATIONS
@@ -222,3 +222,7 @@ Y109 DB 129214.3 67000.00 0.0 0.0
Y110 DB 130410.7 67000.00 0.0 0.0
Y111 DB 131607.1 67000.00 0.0 0.0
Y112 DB 132803.6 67000.00 0.0 0.0
+Z10 DB 67000.00 10767.86 0.0 25000.0
+Z20 DB 67000.00 22732.14 0.0 25000.0
+Z30 DB 67000.00 34696.43 0.0 25000.0
+Z40 DB 67000.00 46660.71 0.0 25000.0
diff --git a/homogeneous_halfspace/STATIONS_ADJOINT b/homogeneous_halfspace/STATIONS_ADJOINT
index 40064a2..1a7c386 100644
--- a/homogeneous_halfspace/STATIONS_ADJOINT
+++ b/homogeneous_halfspace/STATIONS_ADJOINT
@@ -1 +1 @@
-X20 DB 67000.00 22732.14 0.0 0.0
+Z20 DB 67000.00 22732.14 0.0 25000.0
diff --git a/layered_halfspace/README b/layered_halfspace/README
index 1ce4c91..238dca6 100644
--- a/layered_halfspace/README
+++ b/layered_halfspace/README
@@ -2,7 +2,9 @@
README
----------------------------------------------------------------------
-This example is used for validation with a layer-cake solution from Komatitsch et al. (1999),
+This example creates a layered model, with three volumes and two different material
+descriptions, using CUBIT.
+It is used for validation with a layer-cake solution from Komatitsch et al. (1999),
using a 2-layer model as shown in their Figure 8, left.
step-by-step tutorial:
diff --git a/meshfem3D_examples/many_interfaces/Mesh_Par_file b/meshfem3D_examples/many_interfaces/Mesh_Par_file
index 3058e98..e724eb0 100644
--- a/meshfem3D_examples/many_interfaces/Mesh_Par_file
+++ b/meshfem3D_examples/many_interfaces/Mesh_Par_file
@@ -39,14 +39,14 @@ LOCAL_PATH = ../in_out_files/DATABASES_MPI
# number of materials
NMATERIALS = 4
# define the different materials in the model as :
-# #material_id #rho #vp #vs #Q_flag #anisotropy_flag #domain_id
-# Q_flag : 0=no attenuation/1=IATTENUATION_SEDIMENTS_40, 2=..., 13=IATTENUATION_BEDROCK
+# #material_id #rho #vp #vs #Q #anisotropy_flag #domain_id
+# Q : 0=no attenuation / quality factor
# anisotropy_flag : 0=no anisotropy/ 1,2,.. check with implementation in aniso_model.f90
# domain_id : 1=acoustic / 2=elastic
-1 1200 1500 750 1 0 2
-2 1100 1600 800 3 0 1
-3 1000 1500 0 0 0 2
-4 1300 1400 700 2 0 2
+1 1200 1500 750 40 0 2
+2 1100 1600 800 60 0 2
+3 1000 1500 0 0 0 1
+4 1300 1400 700 50 0 2
# number of regions
NREGIONS = 4
# define the different regions of the model as :
diff --git a/meshfem3D_examples/many_interfaces/README b/meshfem3D_examples/many_interfaces/README
index f1ade11..6b0036a 100644
--- a/meshfem3D_examples/many_interfaces/README
+++ b/meshfem3D_examples/many_interfaces/README
@@ -1,2 +1,8 @@
-To try this example, copy all the files within this folder to in_data_files/meshfem3D_files.
-Then you can compile and run meshfem3D.
+----------------------------------------------------------------------
+README
+----------------------------------------------------------------------
+
+To try this example, copy all the files within this folder to 'in_data_files/meshfem3D_files/'
+in the SPECFEM3D root directory.
+
+Then you can compile and run xmeshfem3D.
diff --git a/meshfem3D_examples/simple_model/README b/meshfem3D_examples/simple_model/README
index 0769c74..cb20a91 100644
--- a/meshfem3D_examples/simple_model/README
+++ b/meshfem3D_examples/simple_model/README
@@ -1,3 +1,10 @@
+----------------------------------------------------------------------
+README
+----------------------------------------------------------------------
+
This is a very simple example to explain the use of meshfem3D.
-To try this example, copy all the files within this folder to in_data_files/meshfem3D_files.
-Then you can compile and run meshfem3D.
+
+To try this example, copy all the files within this folder to 'in_data_files/meshfem3D_files/'
+in the SPECFEM3D root directory.
+
+Then you can compile and run xmeshfem3D.
diff --git a/tomographic_model/README b/tomographic_model/README
index cc7a9c5..b23595e 100644
--- a/tomographic_model/README
+++ b/tomographic_model/README
@@ -2,6 +2,9 @@
README
----------------------------------------------------------------------
+This example creates a single volume block and assigns a tomographic model
+as material property to run a forward simulation.
+
step-by-step tutorial:
0. check that all software is available (or that modules are loaded):
diff --git a/waterlayered_halfspace/README b/waterlayered_halfspace/README
index cf7109c..a7c2754 100644
--- a/waterlayered_halfspace/README
+++ b/waterlayered_halfspace/README
@@ -2,6 +2,10 @@
README
----------------------------------------------------------------------
+This example creates a layered model as in example layered_halfspace/
+with a water layer on top and an elastic layer below, using CUBIT.
+It then runs a forward simulation which couples acoustic & elastic waves.
+
step-by-step tutorial:
More information about the CIG-COMMITS
mailing list