Skip to content

Commit 3fbc654

Browse files
authored
Merge pull request #1258 from danielpeter/devel
updates tests and scripts; updates source arrays; adds additional source time functions; adds additional mesh outputs for visualization
2 parents bfcc9b6 + 138fa18 commit 3fbc654

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+7492
-1174
lines changed

.azure-pipelines.yml

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ jobs:
8484
displayName: 'Run checks'
8585
8686
- job: compilation_default
87-
# ubuntu-latest: ubuntu-22.04 w/ GCC 11
87+
# ubuntu-latest: ubuntu-24.04 w/ GCC 13.3
8888
displayName: 'Compilation Default GCC'
8989
steps:
9090
- template: .azure-pipelines/install-template.yml
@@ -96,14 +96,14 @@ jobs:
9696
CUDA: false
9797
BUILD: true
9898

99-
- job: compilation_default_gcc9
100-
displayName: 'Compilation Default GCC 9'
99+
- job: compilation_default_gcc10
100+
displayName: 'Compilation Default GCC 10'
101101
pool:
102-
vmImage: 'ubuntu-20.04'
102+
vmImage: 'ubuntu-22.04'
103103
variables:
104-
CC: gcc-9
105-
CXX: g++-9
106-
FC: gfortran-9
104+
CC: gcc-10
105+
CXX: g++-10
106+
FC: gfortran-10
107107
steps:
108108
- template: .azure-pipelines/install-template.yml
109109
parameters:
@@ -114,14 +114,14 @@ jobs:
114114
CUDA: false
115115
BUILD: true
116116

117-
- job: compilation_default_gcc10
118-
displayName: 'Compilation Default GCC 10'
117+
- job: compilation_default_gcc11
118+
displayName: 'Compilation Default GCC 11'
119119
pool:
120-
vmImage: 'ubuntu-20.04'
120+
vmImage: 'ubuntu-22.04'
121121
variables:
122-
CC: gcc-10
123-
CXX: g++-10
124-
FC: gfortran-10
122+
CC: gcc-11
123+
CXX: g++-11
124+
FC: gfortran-11
125125
steps:
126126
- template: .azure-pipelines/install-template.yml
127127
parameters:
@@ -132,52 +132,52 @@ jobs:
132132
CUDA: false
133133
BUILD: true
134134

135-
- job: compilation_CUDA11_gcc9
136-
displayName: 'Compilation CUDA 11 GCC 9'
135+
- job: compilation_CUDA11_gcc10
136+
displayName: 'Compilation CUDA 11 GCC 10'
137137
pool:
138-
vmImage: 'ubuntu-20.04'
138+
vmImage: 'ubuntu-22.04'
139139
variables:
140-
CC: gcc-9
141-
CXX: g++-9
142-
FC: gfortran-9
140+
CC: gcc-10
141+
CXX: g++-10
142+
FC: gfortran-10
143143
steps:
144144
- template: .azure-pipelines/install-template.yml
145145
parameters:
146146
CUDA: true
147-
CUDA_V: '11.4'
147+
CUDA_V: '11.7'
148148
- template: .azure-pipelines/configure-template.yml
149149
parameters:
150-
TESTFLAGS: '--with-mpi --with-cuda=cuda10'
150+
TESTFLAGS: '--with-mpi --with-cuda=cuda11'
151151
CUDA: true
152152
BUILD: true
153153

154-
- job: compilation_CUDA11_gcc10
155-
displayName: 'Compilation CUDA 11 GCC 10'
154+
- job: compilation_CUDA11_gcc11
155+
displayName: 'Compilation CUDA 11 GCC 11'
156156
pool:
157-
vmImage: 'ubuntu-20.04'
157+
vmImage: 'ubuntu-22.04'
158158
variables:
159-
CC: gcc-10
160-
CXX: g++-10
161-
FC: gfortran-10
159+
CC: gcc-11
160+
CXX: g++-11
161+
FC: gfortran-11
162162
steps:
163163
- template: .azure-pipelines/install-template.yml
164164
parameters:
165165
CUDA: true
166-
CUDA_V: '11.4'
166+
CUDA_V: '11.7'
167167
- template: .azure-pipelines/configure-template.yml
168168
parameters:
169-
TESTFLAGS: '--with-mpi --with-cuda=cuda11'
169+
TESTFLAGS: '--with-mpi --with-cuda=cuda10'
170170
CUDA: true
171171
BUILD: true
172172

173173
- job: compilation_CUDA12
174-
displayName: 'Compilation CUDA 12 GCC 10'
174+
displayName: 'Compilation CUDA 12 GCC 12'
175175
pool:
176-
vmImage: 'ubuntu-20.04'
176+
vmImage: 'ubuntu-22.04'
177177
variables:
178-
CC: gcc-10
179-
CXX: g++-10
180-
FC: gfortran-10
178+
CC: gcc-12
179+
CXX: g++-12
180+
FC: gfortran-12
181181
steps:
182182
- template: .azure-pipelines/install-template.yml
183183
parameters:
@@ -195,7 +195,7 @@ jobs:
195195
- template: .azure-pipelines/install-template.yml
196196
parameters:
197197
CUDA: true
198-
CUDA_V: '12.1'
198+
CUDA_V: '12.9'
199199
- template: .azure-pipelines/configure-template.yml
200200
parameters:
201201
TESTFLAGS: '--with-mpi --with-cuda=cuda12'

.azure-pipelines/install-template.yml

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
# https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu1804-README.md
77
# ubuntu-20.04:
88
# https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-README.md
9-
# ubuntu-22.04 "ubuntu-latest":
9+
# ubuntu-22.04:
1010
# https://github.com/actions/runner-images/blob/main/images/linux/Ubuntu2204-Readme.md
11-
#
11+
# ubuntu-24.04: "ubuntu-latest"
1212
parameters:
1313
- name: CUDA
1414
type: boolean
@@ -118,35 +118,38 @@ steps:
118118
#UBUNTU_VERSION=ubuntu2004
119119
## distribution jammy: from ubuntu 22.04
120120
#UBUNTU_VERSION=ubuntu2204
121+
## distribution noble: from ubuntu 24.04
122+
#UBUNTU_VERSION=ubuntu2204
121123
122124
# default
123-
UBUNTU_VERSION=ubuntu2004
125+
UBUNTU_VERSION=ubuntu2204
124126
125127
# CUDA_VERSION - specifies CUDA toolkit version
126128
echo "CUDA version: $CUDA_V"
127129
# http://developer.download.nvidia.com/compute/cuda/repos/
128130
if [ "$CUDA_V" == "6.5" ]; then
129-
## trusty
130131
CUDA_VERSION=6.5-14
131132
elif [ "$CUDA_V" == "9.2" ]; then
132-
## xenial
133133
CUDA_VERSION=9.2.148-1
134134
elif [ "$CUDA_V" == "10.2" ]; then
135-
## bionic
136135
CUDA_VERSION=10.2.89-1
137136
elif [ "$CUDA_V" == "11.4" ]; then
138-
## focal
139137
CUDA_VERSION=11.4.0-1
138+
elif [ "$CUDA_V" == "11.7" ]; then
139+
CUDA_VERSION=11.7.0-1
140140
elif [ "$CUDA_V" == "12.1" ]; then
141-
## focal
142141
CUDA_VERSION=12.1.1-1
142+
elif [ "$CUDA_V" == "12.9" ]; then
143+
CUDA_VERSION=12.9.0-1
143144
else
144145
# note: - on azure VM nodes with ubuntu 18.04, default gcc version is 9.3;
145146
# needs at least CUDA version 10.x
146147
# - on azure VM nodes with ubuntu 20.04, default gcc version is 10.3;
147148
# needs at least CUDA version 11.x
148-
# - on azure VM nodes with ubuntu-latest (22.04), default gcc version is 11.3;
149+
# - on azure VM nodes with ubuntu 22.04, default gcc version is 11.3;
149150
# needs at least CUDA version 11.7
151+
# - on azure VM nodes with ubuntu 24.04 (ubuntu-latest), default gcc version is 13.3;
152+
# needs at least CUDA version ?
150153
CUDA_VERSION=12.1.1-1
151154
fi
152155
echo

.azure-pipelines/test-template.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ steps:
4040
echo "workdir: $WORKDIR"
4141
echo "current dir: `pwd`"
4242
echo
43-
ln -s $WORKDIR/utils/compare_seismogram_correlations.py
43+
ln -s $WORKDIR/utils/scripts/compare_seismogram_correlations.py
4444
./compare_seismogram_correlations.py REF_SEIS/ OUTPUT_FILES/
4545
if [[ $? -ne 0 ]]; then exit 1; fi
4646
./compare_seismogram_correlations.py REF_SEIS/ OUTPUT_FILES/ | grep min/max | cut -d \| -f 3 | awk '{print "correlation:",$1; if ($1 < 0.999 ){print $1,"failed"; exit 1;}else{ print $1,"good"; exit 0;}}'

.travis/run_tests.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ case "$TESTDIR" in
3131
10) dir=EXAMPLES/applications/Rayleigh_wave_no_crack/ ;;
3232
11) dir=EXAMPLES/applications/Rayleigh_wave_with_crack/ ;;
3333
12) dir=EXAMPLES/reproducible_study/Tape2007/ ;;
34-
13) dir=EXAMPLES/check_absolute_amplitude_of_pressure_source_seismograms_acoustic/ ;;
35-
14) dir=EXAMPLES/check_absolute_amplitude_of_force_source_seismograms_elastic/ ;;
36-
15) dir=EXAMPLES/check_absolute_amplitude_of_force_source_seismograms_viscoelastic/ ;;
34+
13) dir=EXAMPLES/benchmarks/check_absolute_amplitude_of_pressure_source_seismograms_acoustic/ ;;
35+
14) dir=EXAMPLES/benchmarks/check_absolute_amplitude_of_force_source_seismograms_elastic/ ;;
36+
15) dir=EXAMPLES/benchmarks/check_absolute_amplitude_of_force_source_seismograms_viscoelastic/ ;;
3737
16) dir=EXAMPLES/reproducible_study/Komatitsch2000_fluid_solid/fluid_solid_external_mesh/ ;;
3838
17) dir=EXAMPLES/reproducible_study/Morency2008_poroelastic_semi_infinite_homogeneous/ ;;
3939
18) dir=EXAMPLES/applications/initial_mode_LDDRK/ ;;

EXAMPLES/notebooks/specfem2d-colab-example.ipynb

Lines changed: 5120 additions & 1 deletion
Large diffs are not rendered by default.

EXAMPLES/reproducible_study/Bottero2016_axisymmetry_example/JensenMesh.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#### Script to create the axisymmetric 2.5d mesh necessary to reproduce
44
#### Jensen et al. 2007.
55
#### This script can be played as a journal file in
6-
#### Trelis/Cubit (http://www.csimsoft.com/trelis) directly or through the script:
6+
#### Trelis/Cubit (https://coreform.com) directly or through the script:
77
#### make_mesh.sh.
88
#### It first run cubit commands and then export the mesh under specfem2d format
99
#### using utils/cubit2specfem2d/cubit2specfem2d.py

EXAMPLES/reproducible_study/Bottero2016_axisymmetry_example/README

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ http://scitation.aip.org/content/asa/journal/jasa/140/5/10.1121/1.4965964?aemail
2626
By default: lx = 15000.0m, lz = 3000.0m, d1 = 600.0m, d2 = 100.0m, l1 = 2000.0m, l2 = 6000.0m
2727

2828
It uses of AXISYM option with an external mesh whose files under specfem2d format are already available in MESH_SMALL.
29-
This mesh has been created with Cubit/Trelis (http://www.csimsoft.com/trelis) with the script JensenMesh.py which is called by
29+
This mesh has been created with Cubit/Trelis (https://coreform.com) with the script JensenMesh.py which is called by
3030
make_mesh.sh. Have a look to the comments in these files if you want to recreate the mesh or just to learn how it is done.
3131

3232
In this example the domain studied is a water layer lying above a viscoelastic seabed with a slope.

EXAMPLES/reproducible_study/Bottero2016_axisymmetry_example/make_mesh.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22
#
3-
# Run Cubit/Trelis (http://www.csimsoft.com/trelis) and cubit2specfem2d to create the mesh in a new directory called MESH by default
3+
# Run Cubit/Trelis (https://coreform.com) and cubit2specfem2d to create the mesh in a new directory called MESH by default
44
# This is how it looks:
55
# ________________________________v__________________________________
66
# | ^ ___________________|______________________________| | ^

doc/USER_MANUAL/02_getting_started.tex

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ \chapter{Getting Started}\label{cha:Getting-Started}
66

77
To download the SPECFEM2D software package, type this:
88
\begin{verbatim}
9-
git clone --recursive --branch devel https://github.com/SPECFEM/specfem2d.git
9+
git clone --recursive --branch devel https://github.com/SPECFEM/specfem2d.git
1010
\end{verbatim}
1111

1212

@@ -18,13 +18,13 @@ \chapter{Getting Started}\label{cha:Getting-Started}
1818
or your .cshrc file):
1919
%
2020
\begin{verbatim}
21-
./configure FC=gfortran CC=gcc
21+
./configure FC=gfortran CC=gcc
2222
\end{verbatim}
2323
%
2424
If you want to run in parallel, i.e., using more than one processor core, then you would type
2525
%
2626
\begin{verbatim}
27-
./configure FC=gfortran CC=gcc MPIFC=mpif90 --with-mpi
27+
./configure FC=gfortran CC=gcc MPIFC=mpif90 --with-mpi
2828
\end{verbatim}
2929

3030
You can replace the GNU compilers above (gfortran and gcc) with other compilers if you want to; for instance for Intel ifort and icc use FC=ifort CC=icc instead.
@@ -53,13 +53,13 @@ \chapter{Getting Started}\label{cha:Getting-Started}
5353
Just as an example:
5454
%
5555
\begin{verbatim}
56-
./configure FC=ifort MPIFC=mpif90 --with-mpi --with-scotch-dir=/opt/scotch
56+
./configure FC=ifort MPIFC=mpif90 --with-mpi --with-scotch-dir=/opt/scotch
5757
\end{verbatim}
5858
%
5959
If you use the Intel ifort compiler to compile the code, we recommend that you use the Intel icc C compiler to compile Scotch, i.e., use:
6060
%
6161
\begin{verbatim}
62-
./configure CC=icc FC=ifort MPIFC=mpif90
62+
./configure CC=icc FC=ifort MPIFC=mpif90
6363
\end{verbatim}
6464
%
6565
For further details about the installation of SCOTCH,
@@ -85,7 +85,7 @@ \chapter{Getting Started}\label{cha:Getting-Started}
8585
After these steps, go back to the main directory of SPECFEM2D/ and type
8686
%
8787
\begin{verbatim}
88-
make
88+
make
8989
\end{verbatim}
9090
%
9191
to create all executables which will be placed into the folder \texttt{./bin/}.\newline
@@ -158,7 +158,7 @@ \section{Adding OpenMP support in addition to MPI}
158158
\noindent
159159
To enable OpenMP, add the flag \texttt{-{}-enable-openmp} to the configuration:
160160
\begin{verbatim}
161-
./configure --enable-openmp ..
161+
./configure --enable-openmp ..
162162
\end{verbatim}
163163
This will add the corresponding OpenMP flag for the chosen Fortran compiler.
164164
Please note that only the elastic domain solver has OpenMP support for now.\newline

0 commit comments

Comments
 (0)