Commit ea6aad17 authored by Tilman Steinweg's avatar Tilman Steinweg

added overnightbuilt to project

parent fecb9289
# Created by https://www.gitignore.io/api/c,c++,latex,kate,linux,osx,kdevelop4,fortran,windows,vim,svn,matlab,emacs,eclipse,cmake,premake-gmake
# specific files fpr GPIAG_Software
sofi3D
snapmerge
partmodel
seismerge
sofi3D_acoustic
guide_sofi3D.pdf
*.d
*.hd
*.strip
/contrib/header/*
*.dat
*.old*
*.bin*
*.su*
LOG_FILE.*
*.log*
### C ###
# Object files
*.o
*.ko
*.obj
*.elf
# Precompiled Headers
*.gch
*.pch
# Libraries
*.lib
*.a
*.la
*.lo
# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib
# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex
# Debug files
*.dSYM/
### C++ ###
# Compiled Object files
*.slo
*.lo
*.o
*.obj
# Precompiled Headers
*.gch
*.pch
# Compiled Dynamic libraries
*.so
*.dylib
*.dll
# Fortran module files
*.mod
# Compiled Static libraries
*.lai
*.la
*.a
*.lib
# Executables
*.exe
*.out
*.app
### LaTeX ###
*.acn
*.acr
*.alg
*.aux
*.bbl
*.bcf
*.blg
*.dvi
*.fdb_latexmk
*.fls
*.glg
*.glo
*.gls
*.idx
*.ilg
*.ind
*.ist
*.lof
*.log
*.lot
*.maf
*.mtc
*.mtc0
*.nav
*.nlo
*.out
*.pdfsync
*.ps
*.run.xml
*.snm
*.synctex.gz
*.toc
*.vrb
*.xdy
*.tdo
### Kate ###
# Swap Files #
.*.kate-swp
.swp.*
### Linux ###
*~
# KDE directory preferences
.directory
# Linux trash folder which might appear on any partition or disk
.Trash-*
### OSX ###
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk
### KDevelop4 ###
*.kdev4
.kdev4/
### Fortran ###
# Compiled Object files
*.slo
*.lo
*.o
*.obj
# Precompiled Headers
*.gch
*.pch
# Compiled Dynamic libraries
*.so
*.dylib
*.dll
# Fortran module files
*.mod
# Compiled Static libraries
*.lai
*.la
*.a
*.lib
# Executables
*.exe
*.out
*.app
### Windows ###
# Windows image file caches
Thumbs.db
ehthumbs.db
# Folder config file
Desktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Windows Installer files
*.cab
*.msi
*.msm
*.msp
# Windows shortcuts
*.lnk
### Vim ###
[._]*.s[a-w][a-z]
[._]s[a-w][a-z]
*.un~
Session.vim
.netrwhist
*~
### SVN ###
.svn/
### Matlab ###
##---------------------------------------------------
## Remove autosaves generated by the Matlab editor
## We have git for backups!
##---------------------------------------------------
# Windows default autosave extension
*.asv
# OSX / *nix default autosave extension
*.m~
# Compiled MEX binaries (all platforms)
*.mex*
# Simulink Code Generation
slprj/
### Emacs ###
# -*- mode: gitignore; -*-
*~
\#*\#
/.emacs.desktop
/.emacs.desktop.lock
*.elc
auto-save-list
tramp
.\#*
# Org-mode
.org-id-locations
*_archive
# flymake-mode
*_flymake.*
# eshell files
/eshell/history
/eshell/lastdir
# elpa packages
/elpa/
# reftex files
*.rel
# AUCTeX auto folder
/auto/
# cask packages
.cask/
### Eclipse ###
*.pydevproject
.metadata
.gradle
tmp/
*.tmp
*.bak
*.swp
*~.nib
local.properties
.settings/
.loadpath
# Eclipse Core
.project
# External tool builders
.externalToolBuilders/
# Locally stored "Eclipse launch configurations"
*.launch
# CDT-specific
.cproject
# JDT-specific (Eclipse Java Development Tools)
.classpath
# Java annotation processor (APT)
.factorypath
# PDT-specific
.buildpath
# sbteclipse plugin
.target
# TeXlipse plugin
.texlipse
### CMake ###
CMakeCache.txt
CMakeFiles
CMakeScripts
Makefile
cmake_install.cmake
install_manifest.txt
### premake-gmake ###
Makefile
*.make
obj/
*.vp*
*.vs*
*.rho*
*.div*
*.rot*
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
#!/bin/sh
# Seismogramme als eps erstellen
# input from command line
#model name
MODEL=$1
#plot only every EVERYTRACEth trace
EVERYTRACE=$2
#switch for manual or automatic clip
AUTOCLIP=$3
PERCENTAGE=99
#example command line call:
#./seismogramme.sh fullspace
#./seismogramme.sh fullspace clip
#if the command line argument AUTOCLIP='' then NO clip is specifically set
#instead the supswigb option perc=98 is used
#if the command line argument AUTOCLIP='clip' then a there will be a command line
#prompt that asked for constant clip for each individual component
exec 5<&0
#loop over components
while read value
do
case "$AUTOCLIP" in
clip)
#manual clip ( input of constant clip required)
echo "Clipwert: "
read CLIP <&5
supswigb < ../../../overnightbuilt/reference_value/$MODEL/su/$MODEL"_ref_"$value.su key=tracl hbox=9 wbox=9 \
label1="Time / s" label2="Tracenumber" title="Model $MODEL, $value component; clip=$CLIP" clip=$clip > $MODEL"_"$value.eps
;;
*)
#auto clip (no input of constant clip required)
#testrun in order to determine the clip at perc=$PERCENTAGE
#stderr will be redirected to file clip.txt
suwind < ../../../overnightbuilt/reference_value/$MODEL/su/$MODEL"_ref_"$value.su j=$EVERYTRACE|\
supswigb key=tracl hbox=9 wbox=9 \
label1="Time / s" label2="Tracenumber" title="Model $MODEL, $value component" perc=$PERCENTAGE 1>$MODEL"_"$value.eps 2>clip.txt
#extract clip from file clip.txt
while read line;
do
if [ "$line" != "" ]; then
CLIP=`echo $line | cut -c 32-45`
fi
done < clip.txt
#use CLIP to add this CLIP into the title of the eps figure
suwind < ../../../overnightbuilt/reference_value/$MODEL/su/$MODEL"_ref_"$value.su j=$EVERYTRACE |\
supswigb key=tracl hbox=9 wbox=9 \
label1="Time / s" label2="Tracenumber" title="Model $MODEL, $value component; clip=$CLIP" clip=$CLIP 1>$MODEL"_"$value.eps
;;
esac
done < components.txt
#!/bin/bash
./seismogramme.sh fullspace 10
./seismogramme.sh halfspace 1
./seismogramme.sh tunnel 1
./seismogramme_rec_array.sh rec_array
#!/bin/sh
# Seismogramme als eps erstellen
# input from command line
MODEL=$1
AUTOCLIP=$2
PERCENTAGE=99
#example command line call:
#./seismogramme.sh fullspace
#./seismogramme.sh fullspace clip
#if the command line argument AUTOCLIP='' then NO clip is specifically set
#instead the supswigb option perc=98 is used
#if the command line argument AUTOCLIP='clip' then a there will be a command line
#prompt that asked for constant clip for each individual component
exec 5<&0
#loop over components
while read value
do
case "$AUTOCLIP" in
clip)
#manual clip ( input of constant clip required)
echo "Clipwert: "
read CLIP <&5
PROFILE="_gx_"
suwind < ../../../overnightbuilt/reference_value/$MODEL/su/$MODEL"_ref_"$value.su \
key=gelev min=2800000 max=2800000 | \
suwind key=gx min=6000000 max=6000000 | \
supswigb key=tracl hbox=9 wbox=9 \
label1="Time / s" label2="Receiver position / m" title="Model: $MODEL, Profile in x direction, Component: $value, Clip: $clip" clip=$clip > $MODEL$PROFILE$value.eps
read clip <&5
PROFILE="_gz_"
suwind < ../../../overnightbuilt/reference_value/$MODEL/su/$MODEL"_ref_"$value.su \
key=gelev min=2800000 max=2800000 | \
suwind key=gy min=4000000 max=4000000 | \
supswigb key=tracl hbox=9 wbox=9 \
label1="Time / s" label2="Receiver position / m" title="Model: $MODEL, Profile in z direction, Component: $value, Clip: $clip" clip=$clip > $MODEL$PROFILE$value.eps
;;
*)
#auto clip (no input of constant clip required)
#---- 2D receiver array, profile in horizontal x direction
#testrun in order to determine the clip at perc=$PERCENTAGE
#stderr will be redirected to file clip.txt
PROFILE="_gx_"
suwind < ../../../overnightbuilt/reference_value/$MODEL/su/$MODEL"_ref_"$value.su \
key=gelev min=2800000 max=2800000 | \
suwind key=gx min=6000000 max=6000000 | \
supswigb key=tracl hbox=9 wbox=9 \
label1="Time / s" label2="Tracenumber" title="Model $MODEL, Profile in x direction, Component: $value" perc=$PERCENTAGE 1> $MODEL$PROFILE$value.eps 2>clip.txt
#extract clip from file clip.txt
while read line;
do
if [ "$line" != "" ]; then
CLIP=`echo $line | cut -c 32-45`
fi
done < clip.txt
#use CLIP to add this CLIP into the title of the eps figure
suwind < ../../../overnightbuilt/reference_value/$MODEL/su/$MODEL"_ref_"$value.su \
key=gelev min=2800000 max=2800000 | \
suwind key=gx min=6000000 max=6000000 | \
supswigb key=tracl hbox=9 wbox=9 \
label1="Time / s" label2="Tracenumber" title="Model: $MODEL, Profile in x direction, $value component; clip=$CLIP" clip=$CLIP 1> $MODEL$PROFILE$value.eps
#---- 2D receiver array, profile in horizontal z direction
#testrun in order to determine the clip at perc=$PERCENTAGE
#stderr will be redirected to file clip.txt
PROFILE="_gz_"
suwind < ../../../overnightbuilt/reference_value/$MODEL/su/$MODEL"_ref_"$value.su \
key=gelev min=2800000 max=2800000 | \
suwind key=gy min=4000000 max=4000000 | \
supswigb key=tracl hbox=9 wbox=9 \
label1="Time / s" label2="Tracenumber" title="Model: $MODEL, Profile in z direction, Component: $value" perc=$PERCENTAGE 1> $MODEL$PROFILE$value.eps 2>clip.txt
#extract clip from file clip.txt
while read line;
do
if [ "$line" != "" ]; then
CLIP=`echo $line | cut -c 32-45`
fi
done < clip.txt
#use CLIP to add this CLIP into the title of the eps figure
suwind < ../../../overnightbuilt/reference_value/$MODEL/su/$MODEL"_ref_"$value.su \
key=gelev min=2800000 max=2800000 | \
suwind key=gy min=4000000 max=4000000 | \
supswigb key=tracl hbox=9 wbox=9 \
label1="Time / s" label2="Tracenumber" title="Model $MODEL, Profile in z direction, $value component; clip=$CLIP" clip=$CLIP 1> $MODEL$PROFILE$value.eps
;;
esac
done < components.txt
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
\subsection{Homogeneous Fullspace}
As you can see in figure \ref{fullspace}, it consists of only one homogeneous material with a density of 2000 kg/m$^3$. The velocities in this model are $v_{P} = 3500$ m/s for the P-wave and $v_{S} = 2000$ m/s for the S-wave. \\
\begin{figure}[h]
\centering
\includegraphics[width=0.6\textwidth]{fullspace.eps}
\caption{Slice of the model \textbf{Homogeneous Fullspace} including the location of the source and receivers}
\label{fullspace}
\end{figure}
The Euclidean distance between each gridpoint is equally spaced in each direction and is 0.1 meter (DX, DY, DZ). The number size of the grid is 420 $\times$ 200 $\times$ 200 (NX $\times$ NY $\times$ NZ) gridpoints. The model dimension thus account for a rectangle with edge length 42 $\times$ 20 $\times$ 20 m.\\
The source for the seismic waves is an explosive point source with a center source frequence of 500 Hz which is located within the rectangle at the coordinates (10, 10, 10). To record the waves, several geophones are used which are arranged as a chain. The first receiver is located at (10.1, 10, 10) and the last at (30.1, 10.0, 10.0). Between each receiver there is an offset of 1 gridpoint, which is equal to 0.1 meters. So the whole chain consists of 301 geophones/receivers with a maximum offset of 30.1 m. Furthermore, no free surface is included in the model which means that the model domain is sourrounded by an absorbing frame.\\
For the computation 4 processor cores are used. 4 cores are computing the expansion of the waves in the x-direction (NPROCX), 1 in the y-direction (NPROCY) and 1 in the z-direction (NPROCZ). The total time of wave propagation is 4 seconds (TIME) and a single timestep is 1.22e-5 s (DT).\\
The following SOFI3D features will be tested during this modeling run:
\begin{itemize}
\item The computational accuracy of your system with a scattered number of processors in one direction
\item The accuracy of the explosive source
\item The model can be directly used to validate the FD seismograms by comparing them to analytical data (see SOFI3D guide, section \textit{Comparison with Analytical solution}).
\end{itemize}
In the following, tables of all parameters used for this modeling are listed.\\
The first two tables contain the parameters for the size of the model
\begin{table}[h]
\begin{minipage}{0.4\textwidth}
\begin{center}
\begin{tabular}{c|c}
Direction & Value\\
\hline
NX & 420\\
NY & 200\\
NZ & 200\\
\end{tabular}
\end{center}
\captionsetup{labelformat=empty}
\caption{Number of gridpoints in each direction}
\end{minipage}
\hfill
\begin{minipage}{0.4\textwidth}
\begin{center}
\begin{tabular}{c|c}
Direction & Value \\
\hline
DX & 0.1 m\\
DY & 0.1 m\\
DZ & 0.1 m\\
\end{tabular}
\end{center}
\captionsetup{labelformat=empty}
\caption{Distance between gridpoints in each direction}
\end{minipage}
\end{table}
The next two tables contain both the parameters for the model like the velocities and the density and the number of cores used for each direction during the modeling.
\begin{table}[h]
\begin{minipage}{0.45\textwidth}
\begin{center}
\begin{tabular}{c|c}
Parameter & Value \\
\hline
$v_P$ & 3500 m/s\\
$v_S$ & 2000 m/s\\
$\rho$ & 2000 kg/$m^3$\\
\end{tabular}
\end{center}
\captionsetup{labelformat=empty}
\caption{Parameters of the model}
\end{minipage}
\hfill
\begin{minipage}{0.45\textwidth}
\begin{center}
\begin{tabular}{c|c}
Direction & Number of cores\\
\hline
NPROCX & 4\\
NPROCY & 1\\
NPROCZ & 1\\
\end{tabular}
\end{center}
\captionsetup{labelformat=empty}
\caption{Number of cores used}
\end{minipage}
\end{table}
\newpage
In the following figures, seismograms of all components (curl, divergence, pressure, $v_x$, $v_y$ and $v_z$) are show shown.
\begin{figure*}[h]
\begin{minipage}[t]{0.45\textwidth}
\includegraphics[width=\textwidth]{eps/fullspace_curl}
\end{minipage}
%
\hfill
%
\begin{minipage}[t]{0.45\textwidth}
\includegraphics[width=\textwidth]{eps/fullspace_div}