Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use seissol v1.3/Rusanov fluxes/ vtkhdf/ extend tpv13 #52

Merged
merged 24 commits into from
Nov 11, 2024
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
cc84e30
use rusanov
Thomas-Ulrich Nov 4, 2024
e1cddd3
fix Dockerfile_jupyterlab
Thomas-Ulrich Nov 4, 2024
4051c03
small improvements on tpv13_training.geo
Thomas-Ulrich Nov 7, 2024
010b1f0
update to msh4
Thomas-Ulrich Nov 7, 2024
4e9b92e
switch to main
Thomas-Ulrich Nov 7, 2024
2e007f3
update both dockers
Thomas-Ulrich Nov 7, 2024
5abb3c7
use latest releases of SeisSol and PUMGen
Thomas-Ulrich Nov 7, 2024
9e2929c
use vtk output for fault
Thomas-Ulrich Nov 7, 2024
65cfc19
add rupture speed exercise
Thomas-Ulrich Nov 7, 2024
fbbf8b9
combine subsidence plots and fix typo in geo
Thomas-Ulrich Nov 9, 2024
637d10e
close plotter to avoid memory leak
Thomas-Ulrich Nov 9, 2024
05c2e87
precise exercise and input file
Thomas-Ulrich Nov 9, 2024
e727737
disable vtk fault output for now
Thomas-Ulrich Nov 9, 2024
8d7c653
add small exercice related with the initial stress
Thomas-Ulrich Nov 10, 2024
b366ca6
add sympy
Thomas-Ulrich Nov 10, 2024
e73d4ed
fix dictionnary
Thomas-Ulrich Nov 10, 2024
933bcaf
more precise instructions
Thomas-Ulrich Nov 10, 2024
358069b
fix missing import module and format files naemes and variables with
Thomas-Ulrich Nov 10, 2024
a5ef412
add subtitle for ground deformation exercise
Thomas-Ulrich Nov 10, 2024
03de600
improve exercise with varying dip
Thomas-Ulrich Nov 10, 2024
d6cad50
add pandas (for moment rate release)
Thomas-Ulrich Nov 10, 2024
cfc93eb
fix bug intoduced previously
Thomas-Ulrich Nov 11, 2024
7345b35
change task title
Thomas-Ulrich Nov 11, 2024
459abea
fix clim for Vr
Thomas-Ulrich Nov 11, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 2 additions & 7 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -86,20 +86,15 @@ RUN git clone --recursive https://github.com/TUM-I5/ASAGI.git \
&& CC=mpicc CXX=mpicxx cmake .. -DCMAKE_INSTALL_PREFIX=/home/tools -DSHARED_LIB=off -DSTATIC_LIB=on -DNONUMA=on \
&& make -j$(nproc) && make install

RUN git clone https://github.com/uphoffc/ImpalaJIT.git \
&& cd ImpalaJIT \
&& mkdir build && cd build \
&& cmake .. && make -j $(nproc) install

RUN git clone https://github.com/SeisSol/easi \
&& cd easi \
&& mkdir build && cd build \
&& CC=mpicc CXX=mpicxx cmake .. -DEASICUBE=OFF -DLUA=ON -DCMAKE_PREFIX_PATH=/home/tools -DCMAKE_INSTALL_PREFIX=/home/tools -DASAGI=ON -DIMPALAJIT=ON .. \
&& CC=mpicc CXX=mpicxx cmake .. -DEASICUBE=OFF -DLUA=ON -DCMAKE_PREFIX_PATH=/home/tools -DCMAKE_INSTALL_PREFIX=/home/tools -DASAGI=ON -DIMPALAJIT=OFF .. \
&& make -j$(nproc) && make install

RUN pip install numpy && docker-clean

RUN git clone --recursive --depth 1 --single-branch --branch v1.1.3 https://github.com/SeisSol/SeisSol.git \
RUN git clone --recursive --depth 1 --single-branch --branch v1.2.0 https://github.com/SeisSol/SeisSol.git \
&& cd SeisSol \
&& mkdir build_hsw && cd build_hsw \
&& export PATH=$PATH:/home/tools/bin \
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile_jupyterlab
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ RUN git clone https://github.com/SeisSol/easi \
&& CC=mpicc CXX=mpicxx cmake .. -DEASICUBE=OFF -DLUA=ON -DCMAKE_PREFIX_PATH=/home/tools -DCMAKE_INSTALL_PREFIX=/home/tools -DASAGI=ON -DIMPALAJIT=OFF .. \
&& make -j$(nproc) && make install

RUN pip install numpy && pip install git+https://github.com/SeisSol/PSpaMM.git@davschneller/compile-fixes && docker-clean
RUN pip install numpy && pip install git+https://github.com/SeisSol/PSpaMM.git && docker-clean

#RUN git clone --depth 1 --single-branch --branch main https://github.com/libxsmm/libxsmm.git \
# && cd libxsmm \
Expand All @@ -104,7 +104,7 @@ RUN pip install numpy && pip install git+https://github.com/SeisSol/PSpaMM.git@d
# -j$(nproc) generator \
# && cp bin/libxsmm_gemm_generator /home/tools/bin

RUN git clone --recursive --depth 1 --single-branch --branch v1.1.3 https://github.com/SeisSol/SeisSol.git \
RUN git clone --recursive --depth 1 --single-branch --branch v1.2.0 https://github.com/SeisSol/SeisSol.git \
&& cd SeisSol \
&& mkdir build_hsw && cd build_hsw \
&& export PATH=$PATH:/home/tools/bin \
Expand Down
2 changes: 2 additions & 0 deletions kaikoura/parametersLSW.par
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ Tv=0.05
!Attenuation parameters (ignored if not compiled with attenuation)
FreqCentral=0.5
FreqRatio=100
numflux = 'rusanov' ! The numerical flux. Values: 'godunov', 'rusanov'
numfluxnearfault = 'rusanov' ! The numerical flux for faces of cells adjacent to the fault (on cells which have at least one DR face), excluding the DR faces themselves. Values: 'godunov', 'rusanov'
/

&IniCondition
Expand Down
3 changes: 3 additions & 0 deletions kaikoura/parametersRS.par
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ Tv=0.05
!Attenuation parameters (ignored if not compiled with attenuation)
FreqCentral=0.5
FreqRatio=100

numflux = 'rusanov' ! The numerical flux. Values: 'godunov', 'rusanov'
numfluxnearfault = 'rusanov' ! The numerical flux for faces of cells adjacent to the fault (on cells which have at least one DR face), excluding the DR faces themselves. Values: 'godunov', 'rusanov'
/

&IniCondition
Expand Down
2 changes: 2 additions & 0 deletions sulawesi/parametersLSW.par
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ Tv=0.05
!Attenuation parameters (ignored if not compiled with attenuation)
FreqCentral=0.3
FreqRatio=100
numflux = 'rusanov' ! The numerical flux. Values: 'godunov', 'rusanov'
numfluxnearfault = 'rusanov' ! The numerical flux for faces of cells adjacent to the fault (on cells which have at least one DR face), excluding the DR faces themselves. Values: 'godunov', 'rusanov'
/

&IniCondition
Expand Down
2 changes: 2 additions & 0 deletions sulawesi/parametersRS.par
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ Tv=0.05
!Attenuation parameters (ignored if not compiled with attenuation)
FreqCentral=0.3
FreqRatio=100
numflux = 'rusanov' ! The numerical flux. Values: 'godunov', 'rusanov'
numfluxnearfault = 'rusanov' ! The numerical flux for faces of cells adjacent to the fault (on cells which have at least one DR face), excluding the DR faces themselves. Values: 'godunov', 'rusanov'
/

&IniCondition
Expand Down
2 changes: 2 additions & 0 deletions tpv13/parameters.par
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ MaterialFileName = 'tpv12_13_material.yaml'
!enable off-fault plasticity (ignored in Plasticity=0)
Plasticity = 1
Tv = 0.03
numflux = 'rusanov' ! The numerical flux. Values: 'godunov', 'rusanov'
numfluxnearfault = 'rusanov' ! The numerical flux for faces of cells adjacent to the fault (on cells which have at least one DR face), excluding the DR faces themselves. Values: 'godunov', 'rusanov'
/

&IniCondition
Expand Down
9 changes: 4 additions & 5 deletions tpv13/tpv13_training.geo
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,15 @@ SetFactory("OpenCASCADE");

// Length of the fault
l_f = 30e3;
// Depth of the fault
// Width of the fault (along-dip)
w_f = 15e3;
dip_rad = dip*Pi/180.;

// Explicitly mesh the square nucleation patch, defined here in fault local coordinates
// Hypocenter, z_n is here the depth along-dip
x_n = 0e3;
z_n = -12e3;
// size of the nucleaton patch
// Dimensions of the nucleation patch
l_n = 3e3;
w_n = 3e3;

Expand All @@ -32,7 +32,7 @@ Z0 = -42e3;
// Create the domain as a box
domain = newv; Box(domain) = {X0, Y0, Z0, X1-X0, Y1-Y0, -Z0};

// Create the fault as a vertically dipping rectangle, centered in x at the hypocenter
// Create the fault as a in the x-y plane, centered in x at the hypocenter
Thomas-Ulrich marked this conversation as resolved.
Show resolved Hide resolved
fault = news; Rectangle(fault) = {-l_f/2, -w_f, 0, l_f, w_f};

// Create the nucleation patch as a smaller rectangle
Expand All @@ -44,7 +44,7 @@ Rotate{ {1, 0, 0}, {0, 0, 0}, dip_rad } { Surface{fault, nucl}; }
// Intersect the domain box with the fault rectangle at the free surface
v() = BooleanFragments{ Volume{domain}; Delete; }{ Surface{fault, nucl}; Delete; };

// Update all coordinates that define important surfaces within the mesh
// Extract surfaces within the mesh for defining boundary conditions
eps = 1e-3;
fault_final[] = Surface In BoundingBox{-l_f/2-eps, -w_f-eps, -w_f-eps, l_f/2+eps, w_f+eps, w_f+eps};
top[] = Surface In BoundingBox{X0-eps, Y0-eps, -eps, X1+eps, Y1+eps, eps};
Expand All @@ -66,4 +66,3 @@ Physical Surface(3) = {fault_final[]};
Physical Surface(5) = {other[]};

Physical Volume(1) = {domain};
Mesh.MshFileVersion = 2.2;
Loading