Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
e71b3a8
Preparation Quakeworx workshop
fabian-kutschera Jan 14, 2025
f3484d0
fix file format
fabian-kutschera Jan 15, 2025
afe28d8
add missing file
fabian-kutschera Jan 15, 2025
ce8f90d
add another missing file
fabian-kutschera Jan 15, 2025
bc23516
add new example, cdb_tpv23
Aangniu Jan 15, 2025
bc0af57
add the input files for cdb_tpv23
Aangniu Jan 15, 2025
223f51a
update cdb_tpv23 notebook
Aangniu Jan 15, 2025
f924ab9
add jupyter notebook for tpv13, with simple fault output
Aangniu Jan 15, 2025
ea0525c
add link to the existing images in the notebook for tpv13
Aangniu Jan 15, 2025
688d942
adapt output dir for quakeworx
fabian-kutschera Jan 15, 2025
e9e3fed
update notebook for cdb_tpv23
Aangniu Jan 16, 2025
500700a
further polishing of the cdb_tpv23 notebook
Aangniu Jan 16, 2025
9325bb0
polish the modiefied tpv13_qwx notebook
Aangniu Jan 16, 2025
eca762a
another round of edits for tpv13 quakeworx notebook
fabian-kutschera Jan 17, 2025
f4a1de5
clean up Kaikoura and remove RS
fabian-kutschera Jan 17, 2025
0e3fe91
Revert "clean up Kaikoura and remove RS"
fabian-kutschera Jan 17, 2025
ae95512
update notebooks
fabian-kutschera Jan 17, 2025
ebeee1f
add gitignore
fabian-kutschera Jan 17, 2025
49e3bf9
smaller visualization updates
fabian-kutschera Jan 18, 2025
fc1f1b1
change file paths to those on the App
Aangniu Jan 19, 2025
fb9103e
minor edit to description Kaikoura
fabian-kutschera Jan 20, 2025
6184c9e
change the output dir to those that we use for training
Aangniu Jan 20, 2025
dfd8d64
small changes to text cells
fabian-kutschera Jan 21, 2025
d99eeb3
Add a link to download the input files to ReadMe.
Aangniu Jan 21, 2025
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
Binary file added .DS_Store
Binary file not shown.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.ipynb_checkpoints/
Binary file added kaikoura/NZ_asagi_40_4.nc
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

but this file is already in training/kaikoura/ASAGI/

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, Thomas! Thanks for the suggestion. One thing that may be easier for the Quakworx specifically is that we would like to ask the audience to download these input files locally on their laptop. Then, we will ask them to upload them to the website. So, it would be easier to explain if all the files are inside the same folder.

Maybe it is an option to keep the duplicated files here until the training is done and then we change this to a link?

Binary file not shown.
Binary file added kaikoura/NZ_asagi_7_4.nc
Binary file not shown.
5 changes: 5 additions & 0 deletions quakeworx/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# [Quakeworx](https://quakeworx.org)

The files in this directory have been adjusted compared to the "standard" SeisSol training repository to be readily used for a science gateway for seismic simulations: [Quakeworx Kick-off: Advancing Earthquake Science and Cybertraining in Seismology](https://quakeworx.org/events/quakeworx-kick-off-workshop)

The input files for the Gateway can be downloaded [here](https://syncandshare.lrz.de/getlink/fiVsNGoWemY1u7To7Gh1pg/quakeworx.zip) as well if you do not have access to Git.
680 changes: 680 additions & 0 deletions quakeworx/cdb_tpv23/cdb_tpv23.ipynb

Large diffs are not rendered by default.

Binary file added quakeworx/cdb_tpv23/off_fault_damage.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
111 changes: 111 additions & 0 deletions quakeworx/cdb_tpv23/parameters_qwx.par
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
&equations
!yaml file defining spatial dependance of material properties
MaterialFileName = 'tpv23_damMaterial.yaml'
/

&IniCondition
/

&Boundaries
BC_fs = 1 ! enable free surface boundaries
BC_dr = 1 ! enable fault boundaries
BC_of = 1 ! enable absorbing boundaries
/

&DynamicRupture
FL = 16 ! Friction law
!0: none, 16:LSW, 103: RS with strong velocity weakening
!yaml file defining spatial dependance of fault properties
ModelFileName = 'tpv23_fault.yaml'

!characteristic time of the forced nucleation
t_0 = 0.5

!reference vector for defining strike and dip direction
XRef = 0.0 ! Reference point
YRef = -1.0
ZRef = 0.0
refPointMethod = 1

RF_output_on = 1 ! Rupture front ascii output
OutputPointType = 5 ! Type (0: no output, 3: ascii file, 4: paraview file, 5: 3+4)
SlipRateOutputType=1 ! 0: (smoother) slip rate output evaluated from the difference between the velocity on both side of the fault
! 1: slip rate output evaluated from the fault tractions and the failure criterion (less smooth but usually more accurate where the rupture front is well developped)
/

!see: https://seissol.readthedocs.io/en/latest/fault-output.html
! parameterize paraview file output
&Elementwise
printIntervalCriterion = 2 ! 1=iteration, 2=time
printtimeinterval_sec = 1.0 ! Time interval at which output will be written
OutputMask = 1 1 1 0 1 1 1 1 1 1 1 ! turn on and off fault outputs
refinement_strategy = 2
refinement = 1
/

! parameterize ascii fault file outputs
&Pickpoint
printtimeinterval = 1 ! Index of printed info at timesteps
OutputMask = 1 1 1 1 ! turn on and off fault outputs
nOutpoints = 14
PPFileName = 'tpv23_3km_faultreceivers.dat'
/

&SourceType
/

&SpongeLayer
/

&MeshNml
MeshFile = 'stepover23_3km_qwx.puml.h5'
meshgenerator = 'PUML' ! Name of meshgenerator (Gambit3D-fast, Netcdf or PUML)
/

&Discretization
CFL = 0.99 ! CFL number (<=1.0)
FixTimeStep = 5 ! Manualy chosen minimum time
ClusteredLTS = 1 ! 1 for Global time stepping, 2,3,5,... Local time stepping (advised value 2)
!ClusteredLTS defines the multi-rate for the time steps of the clusters 2 for Local time stepping
/

&Output
FaultOutputFlag = 1 ! DR output (add this line only if DR is active)
OutputFile = 'outputs/cdb_tpv23'
Format = 6 ! Format (10= no output, 6=hdf5 output)
! |stress |vel
iOutputMask = 1 1 1 1 1 1 1 1 1
! |strain |eta
iPlasticityMask = 0 0 0 0 0 0 1
TimeInterval = 5. ! Index of printed info at time
refinement = 1

! Free surface output
SurfaceOutput = 1
SurfaceOutputRefinement = 2
SurfaceOutputInterval = 5.0

printIntervalCriterion = 2 ! Criterion for index of printed info: 1=timesteps,2=time,3=timesteps+time

pickdt = 0.005 ! Pickpoint Sampling
pickDtType = 1 ! Pickpoint Type
RFileName = 'tpv23_receivers.dat' ! Record Points in extra file

xdmfWriterBackend = 'posix' ! (optional) The backend used in fault, wavefield,
! and free-surface output. The HDF5 backend is only supported when SeisSol is compiled with
! HDF5 support.

EnergyOutput = 1 ! Computation of energy, written in csv file
EnergyTerminalOutput = 1 ! Write energy to standard output
EnergyOutputInterval = 0.5
/

&AbortCriteria
EndTime = 14
/

&Analysis
/

&Debugging
/
Binary file added quakeworx/cdb_tpv23/stepover23_3km_qwx.puml.h5
Binary file not shown.
Binary file added quakeworx/cdb_tpv23/tpv23.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
29 changes: 29 additions & 0 deletions quakeworx/cdb_tpv23/tpv23_3km_faultreceivers.dat
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
0.0e3 -3.0e3 0.0e3
5.0e3 -3.0e3 0.0e3
20.0e3 -3.0e3 0.0e3
4.0e3 -3.0e3 -5.0e3
4.0e3 -3.0e3 -5.1e3
4.0e3 -3.0e3 -5.5e3
5.0e3 -3.0e3 -5.0e3
5.0e3 -3.0e3 -5.1e3
5.0e3 -3.0e3 -5.5e3
0.0e3 -3.0e3 -10.0e3
5.0e3 -3.0e3 -10.0e3
6.0e3 -3.0e3 -10.0e3
6.0e3 -3.0e3 -9.0e3
6.0e3 -3.0e3 -8.0e3
6.0e3 -3.0e3 -7.0e3
6.0e3 -3.0e3 -6.0e3
6.0e3 -3.0e3 -5.0e3
10.0e3 -3.0e3 -10.0e3
20.0e3 -3.0e3 -10.0e3
7.0e3 -3.0e3 -11.0e3
7.0e3 -3.0e3 -10.0e3
7.0e3 -3.0e3 -9.0e3
7.5e3 -3.0e3 -11.0e3
7.5e3 -3.0e3 -10.0e3
7.5e3 -3.0e3 -9.0e3
12.5e3 -3.0e3 -11.0e3
12.5e3 -3.0e3 -10.0e3
12.5e3 -3.0e3 -9.0e3
12.5e3 -3.0e3 -7.0e3
46 changes: 46 additions & 0 deletions quakeworx/cdb_tpv23/tpv23_damMaterial.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
!Switch
[rho,mu0,lambda0,xi0,mu,lambda,gamma,epsxx_alpha,epsyy_alpha,epszz_alpha,epsxy_alpha,epsyz_alpha,epszx_alpha]: !ConstantMap
map:
rho: 2760
mu0: 32038120320
lambda0: 32043759360
xi0: 0.75
mu: 32038120320
lambda: 32043759360
gamma: 0.00e10
epsxx_alpha: -4.6921e-5
epsyy_alpha: -5.9238e-4
epszz_alpha: -4.6921e-5
epsxy_alpha: 4.5787e-4
epsyz_alpha: 0.0
epszx_alpha: 0.0
[gammaR,Cd]: !FunctionMap
map:
gammaR: |
depthVar = 1000.0;
dGam = 0.0;
uGam = 37200000000.0;
if (z >= -depthVar) {
return uGam - dGam*(depthVar + z)/depthVar;
}
return uGam;
Cd: |
rx = sqrt(x*x);
rz = sqrt((z+7500)*(z+7500));
rx1 = sqrt((x+7500)*(x+7500));
rx2 = sqrt((x-7500)*(x-7500));
r = max(rx, rz);
depthCd = 1000.0;
CdUni = 0.000005;
CdDropTo = 0.0000005;
if (z > -depthCd) {
return CdUni - (CdUni - CdDropTo)*(depthCd+z)/depthCd;
}
if (max(rx1,rz) <=1800) {
return CdUni;
}
if (max(rx2,rz) <=1800) {
return CdUni;
}
return CdUni;

55 changes: 55 additions & 0 deletions quakeworx/cdb_tpv23/tpv23_fault.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
!Switch
[s_xz,s_yz]: !ConstantMap
map:
s_xz: 0
s_yz: 0
[s_xy]: !FunctionMap
map:
s_xy: |
tau_0 = 0.0;
if (z >= -15000.0) {
return tau_0;
}
if (z < -15000.0) {
return tau_0 - 0.0*(-z-15000);
}
return 0.0;
[s_zz]: !FunctionMap
map:
s_zz: |
return -50000000.0;
[s_xx]: !FunctionMap
map:
s_xx: |
return -50000000.0;
[s_yy]: !FunctionMap
map:
s_yy: |
return -0.0;
[mu_s, mu_d, d_c]: !ConstantMap
map:
mu_s: 0.548
mu_d: 0.373
d_c: 0.3
[cohesion,forced_rupture_time]: !FunctionMap # nucleation as used SCEC tpv24
map:
cohesion: |
cohesion = -0.0;
zIncreasingCohesion = 5000.0;
if (z >= -zIncreasingCohesion) {
return cohesion - 1.0*1400.0 * ( z + zIncreasingCohesion);
}
return cohesion;
forced_rupture_time: |
r = sqrt(pow(x+15000.0, 2.0) + pow(z+10000.0, 2.0));
r_crit = 3000.0;
Vs = 3464.0;
if (r <= r_crit) {
return r/(0.7*Vs)+(0.081*r_crit/(0.7*Vs))*(1.0/(1.0-pow(r/r_crit, 2.0))-1.0);
}
return 1000000000.0;
[Tnuc_n, Tnuc_s, Tnuc_d]: !ConstantMap
map:
Tnuc_n: 0
Tnuc_s: 0
Tnuc_d: 0
8 changes: 8 additions & 0 deletions quakeworx/cdb_tpv23/tpv23_receivers.dat
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
-2e3 3e3 0
-2e3 -3e3 0
2e3 3e3 0
2e3 -0.6e3 0
2e3 -4.2e3 0
8e3 3e3 0
8e3 -2.3e3 0
8e3 -7.6e3 0
Binary file added quakeworx/kaikoura/NZ_asagi_40_4.nc
Binary file not shown.
Binary file added quakeworx/kaikoura/NZ_asagi_7_4.nc
Binary file not shown.
33 changes: 33 additions & 0 deletions quakeworx/kaikoura/NZ_faultLSW.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
!Switch
[mu_s, mu_d, d_c]: !ConstantMap
map:
mu_s: 0.60
mu_d: 0.10
d_c: 0.2
[forced_rupture_time, cohesion]: !LuaMap
returns: [forced_rupture_time, cohesion]
function: |
function f (x)
xh = -56533.6328
yh = -56738.6094
zh = -14389.161621
r_crit = 2500.0
r = math.sqrt((x["x"]-xh)^2 + (x["y"]-yh)^2 + (x["z"]-zh)^2 )
Vs = 3000.0
if (r <= r_crit) then
forced_rupture_time = r/(0.7*Vs)+(0.081*r_crit/(0.7*Vs))*(1.0/(1.0-(r/r_crit)^2)-1.0)
else
forced_rupture_time = 1000000000.0
end

return {
forced_rupture_time = forced_rupture_time,
cohesion = -400000.-400*math.max(x["z"]+4000.,0)
}
end
[s_xx, s_yy, s_zz, s_xy, s_yz, s_xz]: !Include NZ_initial_stressLSW.yaml
[Tnuc_n, Tnuc_s, Tnuc_d]: !ConstantMap
map:
Tnuc_n: 0
Tnuc_s: 0
Tnuc_d: 0
Loading
Loading