Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
8cc2623
Refine TWF by adding indepent mus and mud
Huihuiweng Apr 22, 2024
ce914f7
Merge pull request #1693 from Huihuiweng/devel
danielpeter Apr 25, 2024
cc9362b
updates error messages
danielpeter Mar 21, 2024
f283555
cleans code formatting
danielpeter Mar 21, 2024
cf2569a
cleans files
danielpeter Mar 21, 2024
350876c
adds cleaning script
danielpeter Mar 21, 2024
800a522
updates vis scripts
danielpeter Apr 4, 2024
f8fdf49
updates surface detection threshold (based on mesh dimensions)
danielpeter Apr 4, 2024
a095385
updates cubit meshing scripts (adding path to GEOCUBIT, just in case)
danielpeter Apr 4, 2024
add15ad
fixes list iterator for newer python versions
danielpeter Apr 8, 2024
5f86fba
adds center point check for top surfaces detection
danielpeter Apr 8, 2024
b81ef12
updates cubit scripts
danielpeter Apr 24, 2024
6b0081e
updates gitignore (to avoid adding compiled my_mpi.mod to repo)
danielpeter May 13, 2024
0f185fc
updates gitignore
danielpeter May 13, 2024
9930e05
updates actions workflow (for macOS)
danielpeter May 13, 2024
885c3f9
updates workflow
danielpeter May 13, 2024
a3267f2
updates workflow for macOS
danielpeter May 13, 2024
ee3b095
Merge pull request #1696 from danielpeter/devel
danielpeter May 13, 2024
203a09c
updates workflow (sed path for macOS)
danielpeter May 14, 2024
b9c7f6d
updates github action checkout version
danielpeter Jun 5, 2024
e9d5096
updates mpi allreduce calls
danielpeter Jun 5, 2024
560c1f9
code cleaning
danielpeter Jun 5, 2024
4d38bff
adds github action test case w/ ADIOS2
danielpeter Jun 5, 2024
2652225
updates github action file
danielpeter Jun 5, 2024
1f01888
Merge pull request #1701 from danielpeter/devel
danielpeter Jun 5, 2024
4751779
wavefield discontinuity mesher
Jun 20, 2024
7295acd
add to track meshfem3D/get_wavefield_discontinuity.f90
Jun 20, 2024
1441e4c
wavefield discontinuity for decompose_mesh
Jun 20, 2024
55de7b9
write a separate database for wavefield discontinuity in mesher and p…
Jun 21, 2024
f93a8a4
generate databases for wavefield discontinuity
Jun 21, 2024
e333501
solver for wavefield discontinuity
Jun 22, 2024
0af8f60
exclude wavefield injection in case of adjoint simulation (SIMULATION…
Jun 23, 2024
59ae952
include changes for wavefield discontinuity to constants.h.in
Jun 23, 2024
3cf37c4
add a small example for wavefield discontinuity problem
Jun 24, 2024
876d4f3
setup a small wavefield injection example using wavefield discontinuity
Jun 24, 2024
621a4e8
fix the symbolic links in DATA/
Jun 27, 2024
cada5cd
add IS_WAVEFIELD_DISCONTINUITY to OMP SHARED section
Jun 27, 2024
acd52e3
Merge pull request #1706 from tianshi-liu/devel
danielpeter Jun 27, 2024
b3611fc
fixes output comment
danielpeter Jul 5, 2024
6fd1993
updates script cubit2specfem3d.py (fixes issue w/ optional surfaces a…
danielpeter Jul 8, 2024
8ddfdda
updates ordering of imprint & merge commands in cubit scripts (first …
danielpeter Jul 8, 2024
b17f716
code cleaning
danielpeter Jul 8, 2024
1b0d98c
Merge pull request #1711 from danielpeter/devel
danielpeter Jul 8, 2024
52e6717
implement diffusion-PDE-based smoothing
Jun 27, 2024
8870f16
include the dependency to module specfem_par_movie_hdf5 in case of HDF5
Aug 10, 2024
b286c27
fix dependencies in case of HDF5 for PDE-based smoothing
Aug 10, 2024
a052e75
Merge pull request #1725 from tianshi-liu/devel
danielpeter Aug 10, 2024
5655470
code cleaning
danielpeter Aug 12, 2024
0f61584
removes unused parameters; updates compilation rules
danielpeter Aug 12, 2024
e21caa6
updates doc
danielpeter Aug 26, 2024
93c1154
Merge pull request #1733 from danielpeter/devel
danielpeter Aug 26, 2024
93cc8a2
replace hdf5 io collective flag to shared param
mnagaso Sep 11, 2024
756bab1
remove unncessary local variable
mnagaso Sep 11, 2024
6c75f1d
change var name to be shorter
mnagaso Sep 11, 2024
3761aab
use generic function
mnagaso Sep 11, 2024
f629439
add workaround
mnagaso Sep 11, 2024
87ae727
support large integer
mnagaso Sep 12, 2024
bebcb5a
copy to 64bit array
mnagaso Sep 12, 2024
d1d0415
read large adjncy
mnagaso Sep 12, 2024
e75c637
Merge branch 'hdf5_update' into devel
mnagaso Jul 28, 2025
4f8b299
Fix: Remove invalid h5tset_size_f call for integer attributes in h5_a…
mnagaso Jul 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
16 changes: 14 additions & 2 deletions .github/scripts/run_build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,25 @@ echo "mpif90 --version"
mpif90 --version
echo

## ADIOS2
if [ "${ADIOS2}" == "true" ]; then
echo
echo "enabling ADIOS2"
echo
ADIOS2_CONFIG="${ADIOS2_DIR}/bin/adios2-config"
adios=(--with-adios2 ADIOS2_CONFIG="$ADIOS2_CONFIG" )
else
adios=()
fi

# configuration
echo
echo "configuration: default"
echo "configuration:"
echo

./configure FC=gfortran MPIFC=mpif90 CC=gcc ${TESTFLAGS}
./configure \
${adios[@]} \
FC=gfortran MPIFC=mpif90 CC=gcc ${TESTFLAGS}

# checks
if [[ $? -ne 0 ]]; then echo "configuration failed:"; cat config.log; echo ""; echo "exiting..."; exit 1; fi
Expand Down
39 changes: 39 additions & 0 deletions .github/scripts/run_install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,12 @@ fi
if [[ $? -ne 0 ]]; then exit 1; fi
echo

# python3 pip upgrade might complain: "ERROR: launchpadlib 1.10.13 requires testresources"
sudo apt-get install -yq --no-install-recommends python3-testresources
# checks exit code
if [[ $? -ne 0 ]]; then exit 1; fi
echo

# python script needs numpy
#sudo apt-get install -qq python-numpy # not working, likely installed on older python version
pip install --user --upgrade pip setuptools wheel
Expand Down Expand Up @@ -68,6 +74,39 @@ echo "mpif90 --version"
mpif90 --version
echo

## ADIOS2
if [ "${ADIOS2}" == "true" ]; then
echo
echo "ADIOS2 installation:"
echo
# installs cmake wget
sudo apt-get install -yq --no-install-recommends cmake wget
# checks exit code
if [[ $? -ne 0 ]]; then exit 1; fi
# uses /opt as installation directory
mkdir -p /opt; cd /opt
# download source
wget https://github.com/ornladios/ADIOS2/archive/refs/tags/v2.10.1.tar.gz
tar zxf v2.10.1.tar.gz
cd ADIOS2-2.10.1/
# build source
mkdir -p build; cd build/
CC=gcc CXX=g++ FC=gfortran cmake -DADIOS2_USE_Fortran=ON \
-DADIOS2_USE_HDF5=OFF -DADIOS2_BUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF \
-DCMAKE_INSTALL_PREFIX=/opt/ADIOS2 ../
# checks exit code
if [[ $? -ne 0 ]]; then exit 1; fi
make -j4
# checks exit code
if [[ $? -ne 0 ]]; then exit 1; fi
make install
# checks exit code
if [[ $? -ne 0 ]]; then exit 1; fi
# environment for directory
echo "ADIOS2_DIR=/opt/ADIOS2" >> $GITHUB_ENV
echo; echo "done ADIOS2"; echo
fi

# MPI
# github actions uses for Linux virtual machines a 2-core CPU environment
# see: https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources
Expand Down
6 changes: 6 additions & 0 deletions .github/scripts/run_tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,12 @@ if [[ "${TEST}" == *"with-hdf5"* ]]; then
cp -v run_this_example_HDF5_IO_server.sh run_this_example.sh
fi

# adios
if [ "${ADIOS2}" == "true" ]; then
# turns on ADIOS
sed -i "s:^ADIOS_ENABLED .*:ADIOS_ENABLED = .true.:" DATA/Par_file
fi

# default script
./run_this_example.sh

Expand Down
86 changes: 61 additions & 25 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Check for changes
id: diff
Expand Down Expand Up @@ -86,7 +86,7 @@ jobs:
needs: changesCheck

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install dependencies
run: |
Expand All @@ -104,9 +104,16 @@ jobs:
echo ""
## avoids sed -i '' issue on MacOS, using gnu sed to have the same sed command lines as in linux
brew install gnu-sed
echo "PATH=/usr/local/opt/gnu-sed/libexec/gnubin:$PATH" >> $GITHUB_ENV
echo "PATH=/opt/homebrew/opt/gnu-sed/libexec/gnubin:$PATH" >> $GITHUB_ENV
## OpenMP
echo "OMP_NUM_THREADS=2" >> $GITHUB_ENV
## MPI
echo
echo "MPI environment:"
echo "mpif90 on path: $(which mpif90)"
echo
# add OpenMPI path to have ./configure detect mpi.h
echo "MPI_INC=/opt/homebrew/include" >> $GITHUB_ENV
## avoids MPI issue with number of slots
echo "OMPI_MCA_rmaps_base_oversubscribe=1" >> $GITHUB_ENV
echo "OMPI_MCA_rmaps_base_inherit=1" >> $GITHUB_ENV
Expand All @@ -121,7 +128,8 @@ jobs:

- name: configure
run: |
./configure
./configure ; if [[ $? -ne 0 ]]; then cat config.log; exit 1; fi
# changes SCOTCH Makefile for macOS
echo "modifying external_libs/scotch/src/Makefile.inc"
cp -v external_libs/scotch/src/Make.inc/Makefile.inc.i686_mac_darwin8 external_libs/scotch/src/Makefile.inc

Expand All @@ -142,7 +150,7 @@ jobs:
os: [ubuntu-latest,ubuntu-20.04]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -161,7 +169,7 @@ jobs:
needs: changesCheck

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Cache Intel oneapi packages
id: cache-intel-oneapi
Expand Down Expand Up @@ -296,7 +304,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -315,7 +323,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -339,7 +347,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -363,7 +371,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -388,7 +396,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -412,7 +420,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -437,7 +445,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -462,7 +470,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -488,7 +496,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -513,7 +521,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -537,7 +545,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -561,7 +569,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -585,7 +593,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -609,7 +617,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -633,7 +641,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -657,7 +665,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -681,7 +689,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -705,7 +713,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
run: ./.github/scripts/run_install.sh
Expand All @@ -729,7 +737,7 @@ jobs:
needs: [linuxCheck]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install packages
env:
Expand All @@ -751,3 +759,31 @@ jobs:
run: ./.github/scripts/run_tests.sh
shell: bash

linuxTest_19:
name: Test run example 19 - meshfem3D simple model w/ ADIOS2
runs-on: ubuntu-latest
needs: [linuxCheck]

steps:
- uses: actions/checkout@v4

- name: Install packages
env:
ADIOS2: true
run: ./.github/scripts/run_install.sh
shell: bash

- name: Run build
env:
TESTFLAGS: --with-mpi --enable-vectorization
ADIOS2: true
run: ./.github/scripts/run_build.sh
shell: bash

- name: Run test
env:
TESTDIR: EXAMPLES/applications/meshfem3D_examples/simple_model/
ADIOS2: true
run: ./.github/scripts/run_tests.sh
shell: bash

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ src/generate_databases/*.mod
src/meshfem3D/*.mod
src/specfem3D/*.mod
*__genmod.f90
my_mpi.mod

# documentation
manual_SPECFEM3D_Cartesian.aux
Expand Down
Loading
Loading