[cig-commits] r19710 - in seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES: . global_s362ani_small global_s362ani_small/DATA
danielpeter at geodynamics.org
danielpeter at geodynamics.org
Fri Mar 2 12:59:54 PST 2012
Author: danielpeter
Date: 2012-03-02 12:59:54 -0800 (Fri, 02 Mar 2012)
New Revision: 19710
Added:
seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/
seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/
seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/CMTSOLUTION
seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/Par_file
seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/STATIONS
seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/go_mesher_pbs.bash
seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/go_solver_pbs.bash
seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/process.sh
Log:
adds small global example EXAMPLE/global_s362ani_small/
Added: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/CMTSOLUTION
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/CMTSOLUTION (rev 0)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/CMTSOLUTION 2012-03-02 20:59:54 UTC (rev 19710)
@@ -0,0 +1,13 @@
+PDEW 2008 1 6 5 14 23.70 37.2200 22.6900 75.0 6.1 6.2 SOUTHERN GREECE
+event name: 200801060514A
+time shift: 0.000
+half duration: 3.0000
+latitude: 36.9800
+longitude: 22.8700
+depth: 92.3900
+Mrr: 7.740000e+24
+Mtt: -1.830000e+25
+Mpp: 1.060000e+25
+Mrt: 1.290000e+25
+Mrp: -8.450000e+24
+Mtp: -4.430000e+24
Added: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/Par_file
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/Par_file (rev 0)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/Par_file 2012-03-02 20:59:54 UTC (rev 19710)
@@ -0,0 +1,116 @@
+
+# forward or adjoint simulation
+SIMULATION_TYPE = 1
+NOISE_TOMOGRAPHY = 0 # flag of noise tomography, three steps (1,2,3). If earthquake simulation, set it to 0.
+SAVE_FORWARD = .false. # save last frame of forward simulation or not
+
+# number of chunks (1,2,3 or 6)
+NCHUNKS = 6
+
+# angular width of the first chunk (not used if full sphere with six chunks)
+ANGULAR_WIDTH_XI_IN_DEGREES = 90.d0 # angular size of a chunk
+ANGULAR_WIDTH_ETA_IN_DEGREES = 90.d0
+CENTER_LATITUDE_IN_DEGREES = 40.d0
+CENTER_LONGITUDE_IN_DEGREES = 10.d0
+GAMMA_ROTATION_AZIMUTH = 20.d0
+
+# number of elements at the surface along the two sides of the first chunk
+# (must be multiple of 32 and 16 * multiple of NPROC below)
+NEX_XI = 96
+NEX_ETA = 96
+
+# number of MPI processors along the two sides of the first chunk
+NPROC_XI = 2
+NPROC_ETA = 2
+
+# 1D models with real structure:
+# 1D_isotropic_prem, 1D_transversely_isotropic_prem, 1D_iasp91, 1D_1066a, 1D_ak135, 1D_ref, 1D_ref_iso
+#
+# 1D models with only one fictitious averaged crustal layer:
+# 1D_isotropic_prem_onecrust, 1D_transversely_isotropic_prem_onecrust, 1D_iasp91_onecrust, 1D_1066a_onecrust, 1D_ak135_onecrust
+#
+# fully 3D models:
+# transversely_isotropic_prem_plus_3D_crust_2.0, 3D_anisotropic, 3D_attenuation,
+# s20rts, s362ani, s362iso, s362wmani, s362ani_prem, s29ea
+MODEL = s362ani
+
+# parameters describing the Earth model
+OCEANS = .true.
+ELLIPTICITY = .true.
+TOPOGRAPHY = .true.
+GRAVITY = .true.
+ROTATION = .true.
+ATTENUATION = .true.
+
+# absorbing boundary conditions for a regional simulation
+ABSORBING_CONDITIONS = .false.
+
+# record length in minutes
+RECORD_LENGTH_IN_MINUTES = 16.0d0
+
+# save AVS or OpenDX movies
+MOVIE_SURFACE = .false.
+MOVIE_VOLUME = .false.
+MOVIE_COARSE = .true.
+NTSTEP_BETWEEN_FRAMES = 500
+HDUR_MOVIE = 0.d0
+
+# save movie in volume. Will save element if center of element is in prescribed volume
+# top/bottom: depth in KM, use MOVIE_TOP = -100 to make sure the surface is stored.
+# west/east: longitude, degrees East [-180/180] top/bottom: latitute, degrees North [-90/90]
+# start/stop: frames will be stored at MOVIE_START + i*NSTEP_BETWEEN_FRAMES, where i=(0,1,2..) and iNSTEP_BETWEEN_FRAMES <= MOVIE_STOP
+# movie_volume_type: 1=strain, 2=time integral of strain, 3=\mu*time integral of strain
+# type 4 saves the trace and deviatoric stress in the whole volume
+#MOVIE_VOLUME_COARSE saves movie only at corners of elements
+MOVIE_VOLUME_TYPE = 6
+#MOVIE_VOLUME_COARSE = .true.
+MOVIE_TOP_KM = -100.0
+MOVIE_BOTTOM_KM = 1000.0
+MOVIE_WEST_DEG = 0.0
+MOVIE_EAST_DEG = 180.0
+MOVIE_NORTH_DEG = 90.0
+MOVIE_SOUTH_DEG = -30.0
+MOVIE_START = 0
+MOVIE_STOP = 40000
+
+# save mesh files to check the mesh
+SAVE_MESH_FILES = .false.
+
+# restart files (number of runs can be 1, 2 or 3, choose 1 for no restart files)
+NUMBER_OF_RUNS = 1
+NUMBER_OF_THIS_RUN = 1
+
+# path to store the local database files on each node
+LOCAL_PATH = DATABASES_MPI
+
+# interval at which we output time step info and max of norm of displacement
+NTSTEP_BETWEEN_OUTPUT_INFO = 1000
+
+# interval in time steps for temporary writing of seismograms
+NTSTEP_BETWEEN_OUTPUT_SEISMOS = 5000000
+NTSTEP_BETWEEN_READ_ADJSRC = 100000
+
+# output format for the seismograms (one can use either or all of the three formats)
+OUTPUT_SEISMOS_ASCII_TEXT = .false.
+OUTPUT_SEISMOS_SAC_ALPHANUM = .false.
+OUTPUT_SEISMOS_SAC_BINARY = .true.
+
+# rotate seismograms to Radial-Transverse-Z or use default North-East-Z reference frame
+ROTATE_SEISMOGRAMS_RT = .false.
+
+# decide if master process writes all the seismograms or if all processes do it in parallel
+WRITE_SEISMOGRAMS_BY_MASTER = .true.
+
+# save all seismograms in one large combined file instead of one file per seismogram
+# to avoid overloading shared non-local file systems such as GPFS for instance
+SAVE_ALL_SEISMOS_IN_ONE_FILE = .false.
+USE_BINARY_FOR_LARGE_FILE = .false.
+
+# flag to impose receivers at the surface or allow them to be buried
+RECEIVERS_CAN_BE_BURIED = .true.
+
+# print source time function
+PRINT_SOURCE_TIME_FUNCTION = .false.
+
+# set to true to use GPUs
+GPU_MODE = .false.
Added: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/STATIONS
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/STATIONS (rev 0)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/STATIONS 2012-03-02 20:59:54 UTC (rev 19710)
@@ -0,0 +1,6 @@
+GRFO IU 49.6909 11.2203 384.0 116.0
+BEKI YL 41.31500 34.26300 1415.0 0.0
+BGIO SR 31.72200 35.08780 752.0 100.0
+LIT HT 40.10080 22.49000 480.0 0.0
+ZKR GE 35.11470 26.21700 270.0 0.0
+S001 XS 37.28300 21.71800 156.0 0.0
Added: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/go_mesher_pbs.bash
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/go_mesher_pbs.bash (rev 0)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/go_mesher_pbs.bash 2012-03-02 20:59:54 UTC (rev 19710)
@@ -0,0 +1,61 @@
+#!/bin/bash
+#PBS -S /bin/bash
+
+## job name and output file
+#PBS -N go_mesher
+#PBS -j oe
+#PBS -o OUTPUT_FILES/job.o
+
+###########################################################
+# USER PARAMETERS
+
+## 24 CPUs ( 3*8 ), walltime 1 hour
+#PBS -l nodes=3:ppn=8,walltime=1:00:00
+
+###########################################################
+
+cd $PBS_O_WORKDIR
+
+BASEMPIDIR=`grep LOCAL_PATH DATA/Par_file | cut -d = -f 2 `
+
+# script to run the mesher and the solver
+# read DATA/Par_file to get information about the run
+# compute total number of nodes needed
+NPROC_XI=`grep NPROC_XI DATA/Par_file | cut -d = -f 2 `
+NPROC_ETA=`grep NPROC_ETA DATA/Par_file | cut -d = -f 2`
+NCHUNKS=`grep NCHUNKS DATA/Par_file | cut -d = -f 2 `
+
+# total number of nodes is the product of the values read
+numnodes=$(( $NCHUNKS * $NPROC_XI * $NPROC_ETA ))
+
+mkdir -p OUTPUT_FILES
+
+# backup files used for this simulation
+cp DATA/Par_file OUTPUT_FILES/
+cp DATA/STATIONS OUTPUT_FILES/
+cp DATA/CMTSOLUTION OUTPUT_FILES/
+
+# obtain job information
+cat $PBS_NODEFILE > OUTPUT_FILES/compute_nodes
+echo "$PBS_JOBID" > OUTPUT_FILES/jobid
+
+##
+## mesh generation
+##
+sleep 2
+
+echo
+echo `date`
+echo "starting MPI mesher on $numnodes processors"
+echo
+
+mpiexec -np $numnodes $PWD/bin/xmeshfem3D
+
+echo " mesher done: `date`"
+echo
+
+# backup important files addressing.txt and list*.txt
+cp OUTPUT_FILES/*.txt $BASEMPIDIR/
+
+echo "finished successfully"
+echo `date`
Property changes on: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/go_mesher_pbs.bash
___________________________________________________________________
Name: svn:executable
+ *
Added: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/go_solver_pbs.bash
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/go_solver_pbs.bash (rev 0)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/go_solver_pbs.bash 2012-03-02 20:59:54 UTC (rev 19710)
@@ -0,0 +1,59 @@
+#!/bin/bash
+#PBS -S /bin/bash
+
+## job name and output file
+#PBS -N go_solver
+#PBS -j oe
+#PBS -o OUTPUT_FILES/job.o
+
+###########################################################
+# USER PARAMETERS
+
+## 24 CPUs ( 3*8 ), walltime 1 hour
+#PBS -l nodes=3:ppn=8,walltime=1:00:00
+
+###########################################################
+
+cd $PBS_O_WORKDIR
+
+BASEMPIDIR=`grep LOCAL_PATH DATA/Par_file | cut -d = -f 2 `
+
+# script to run the mesher and the solver
+# read DATA/Par_file to get information about the run
+# compute total number of nodes needed
+NPROC_XI=`grep NPROC_XI DATA/Par_file | cut -d = -f 2 `
+NPROC_ETA=`grep NPROC_ETA DATA/Par_file | cut -d = -f 2`
+NCHUNKS=`grep NCHUNKS DATA/Par_file | cut -d = -f 2 `
+
+# total number of nodes is the product of the values read
+numnodes=$(( $NCHUNKS * $NPROC_XI * $NPROC_ETA ))
+
+mkdir -p OUTPUT_FILES
+
+# backup files used for this simulation
+cp DATA/Par_file OUTPUT_FILES/
+cp DATA/STATIONS OUTPUT_FILES/
+cp DATA/CMTSOLUTION OUTPUT_FILES/
+
+# obtain job information
+cat $PBS_NODEFILE > OUTPUT_FILES/compute_nodes
+echo "$PBS_JOBID" > OUTPUT_FILES/jobid
+
+##
+## forward simulation
+##
+sleep 2
+
+# set up addressing files from previous mesher run
+cp $BASEMPIDIR/addr*.txt OUTPUT_FILES/
+cp $BASEMPIDIR/list*.txt OUTPUT_FILES/
+
+echo
+echo `date`
+echo starting run in current directory $PWD
+echo
+
+mpiexec -np $numnodes $PWD/bin/xspecfem3D
+
+echo "finished successfully"
+echo `date`
Property changes on: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/go_solver_pbs.bash
___________________________________________________________________
Name: svn:executable
+ *
Added: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/process.sh
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/process.sh (rev 0)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/process.sh 2012-03-02 20:59:54 UTC (rev 19710)
@@ -0,0 +1,76 @@
+#!/bin/bash
+#
+# global simulation example
+#
+# script runs mesher and solver
+# using batch scripts for a PBS queueing system
+# on 24 CPUs
+#
+#
+# modify accordingly for your own system specifics
+##################################################
+# USER PARAMETER
+# source directory
+rootdir=~/SPECFEM3D_GLOBE_GPU/
+
+##################################################
+
+echo "running example: `date`"
+currentdir=`pwd`
+
+echo "directory: $currentdir"
+echo
+
+# sets up directory structure in current example directoy
+echo
+echo " setting up example..."
+echo
+
+mkdir -p DATABASES_MPI
+mkdir -p OUTPUT_FILES
+
+rm -rf DATABASES_MPI/*
+rm -rf OUTPUT_FILES/*
+
+# compiles executables in root directory
+# using default configuration
+
+cd $rootdir
+# configures package with ifort compiler
+#./configure F90=ifort MPIF90=mpif90 FLAGS_CHECK="-O3 -assume byterecl" FLAGS_NO_CHECK="-O3 -assume byterecl"
+# compiles for a forward simulation
+cp $currentdir/DATA/Par_file DATA/Par_file
+make
+
+# backup of constants setup
+cp setup/* $currentdir/OUTPUT_FILES/
+cp OUTPUT_FILES/values_from_mesher.h $currentdir/OUTPUT_FILES/
+cp DATA/Par_file $currentdir/OUTPUT_FILES/
+
+cd $currentdir
+
+# copy executables
+mkdir -p bin
+cp $rootdir/bin/xmeshfem3D ./bin/
+cp $rootdir/bin/xspecfem3D ./bin/
+
+# links data directories needed to run example in this current directory with s362ani
+cd DATA/
+ln -s $rootdir/DATA/crust2.0
+ln -s $rootdir/DATA/s362ani
+ln -s $rootdir/DATA/QRFSI12
+ln -s $rootdir/DATA/topo_bathy
+cd ../
+
+# submits job to run mesher & solver
+echo
+echo " submitting script..."
+echo
+
+echo "please submit job now manually: "
+echo " meshing : qsub go_mesher_pbs.bash"
+echo " forward simulation : qsub go_solver_pbs.bash"
+echo
+echo "after job completion, see results in directory: OUTPUT_FILES/"
+echo "done: `date`"
+
Property changes on: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/process.sh
___________________________________________________________________
Name: svn:executable
+ *
More information about the CIG-COMMITS
mailing list