Releases: PrincetonUniversity/SPECFEMPP
v0.2.0
Description
This release adds support for forward-adjoint simulations and computing Misfit Kernels. Have a look at example 03 for user guide on how to use adjoint capabilities within SPECFEM++.
Documentation
The documentation for this release can be found here
Getting the code
git clone https://github.com/PrincetonUniversity/SPECFEMPP && \
cd SPECFEMPP && \
git checkout tags/0.2.0
What's Changed
-
Assembly implementation by @Rohit-Kakodkar in #103
- Addedspecfem::compute::assembly
, which holds all the assembly information
-specfem::compute::assembly
is organized to optimize for caching on CPUs and Coalescing on GPUs
- Documentation https://specfem2d-kokkos.readthedocs.io/en/devel/api/assembly/index.html -
Reimplement kernels by @Rohit-Kakodkar in #104
- Re-implemented compute kernels as elemental functions -
Write forward fields by @Rohit-Kakodkar in #105
- implemented forward wavefield writer
- implemeted IO libraries for ASCII and HDF5 -
Read backward fields by @Rohit-Kakodkar in #106
- Implemented wavefield readers -
Adjoint sources by @Rohit-Kakodkar in #107
- Implented adjoint sources
- External source time functions -
Adjoint simulations by @Rohit-Kakodkar in #112
- Implemented Misfit Kernels
- Implemented solver for combined forward-adjoint simulations
- SIMD implementation
- Writer for Misfit Kernels
Full Changelog: v0.1.0...0.2.0
0.2.0-release-candidate
Description
This release adds support for forward-adjoint simulations and computing Misfit Kernels. Have a look at example 03 for user guide on how to use adjoint capabilities within SPECFEM++.
Documentation
The documentation for this release can be found here
Getting the code
git clone https://github.com/PrincetonUniversity/SPECFEMPP && \
cd SPECFEMPP && \
git checkout tags/0.2.0-release-candidate
What's Changed
-
Assembly implementation by @Rohit-Kakodkar in #103
- Addedspecfem::compute::assembly
, which holds all the assembly information
-specfem::compute::assembly
is organized to optimize for caching on CPUs and Coalescing on GPUs
- Documentation https://specfem2d-kokkos.readthedocs.io/en/devel/api/assembly/index.html -
Reimplement kernels by @Rohit-Kakodkar in #104
- Re-implemented compute kernels as elemental functions -
Write forward fields by @Rohit-Kakodkar in #105
- implemented forward wavefield writer
- implemeted IO libraries for ASCII and HDF5 -
Read backward fields by @Rohit-Kakodkar in #106
- Implemented wavefield readers -
Adjoint sources by @Rohit-Kakodkar in #107
- Implented adjoint sources
- External source time functions -
Adjoint simulations by @Rohit-Kakodkar in #112
- Implemented Misfit Kernels
- Implemented solver for combined forward-adjoint simulations
- SIMD implementation
- Writer for Misfit Kernels
Full Changelog: v0.1.0...0.2.0-release-candidate
v0.1.0
Major Release Candidate
New Features
-
GLL Library
- GLL library implementation to compute GLL points and weights.
-
Meshing (MESHFEM)
- MESHFEM2D is included as the default mesher in this release
- Implemented MESH database reader for fortran binary generated by MESHFEM
-
Sources
- Force Source
- Moment-tensor source
-
Source time function
- Dirac delta source
- Ricker (Gaussian) source
-
Receiver
- Displacement
- Velocity
- Acceleration
-
Physics
- Elastic Domain
- Acoustic Domain
- Elastic-Acoustic Coupling
-
Boundary Conditions
- Free surface
- Stacey
-
Solver
- Newmark Time-Marching Solver
Major Changes
- None
Minor Changes
- None
Known Issues (Bugs)
Patches will be released soon for these bugs.
- Memory corruption issue for Dirichlet, Stacey and Composite BC on IntelLLVM compiler 2022.2.0 when running tests. The solver does not experience these issues. Check pull request #100
New Contributors
v0.1.0-release-candidate
Major Release Candidate
New Features
-
GLL Library
- GLL library implementation to compute GLL points and weights.
-
Meshing (MESHFEM)
- MESHFEM2D is included as the default mesher in this release
- Implemented MESH database reader for fortran binary generated by MESHFEM
-
Sources
- Force Source
- Moment-tensor source
-
Source time function
- Dirac delta source
- Ricker (Gaussian) source
-
Receiver
- Displacement
- Velocity
- Acceleration
-
Physics
- Elastic Domain
- Acoustic Domain
- Elastic-Acoustic Coupling
-
Boundary Conditions
- Free surface
- Stacey
-
Solver
- Newmark Time-Marching Solver
Major Changes
- None
Minor Changes
- None
Known Issues (Bugs)
Patches will be released soon for these bugs.
- Memory corruption issue for Dirichlet, Stacey and Composite BC on IntelLLVM compiler 2022.2.0
- Composite BC do not work using CUDA
New Contributors
- @lsawade made their first contribution in #40
- @williameaton made their first contribution in #73
- @sirpipat made their first contribution in #79
- @icui made their first contribution in #74
Full Changelog: https://github.com/PrincetonUniversity/SPECFEMPP/commits/v0.1.0-release-candidate
v0.0.1-beta
Initial release of SPECFEM2D KOKKOS package
We are pleased to announce first release 0.0.1-beta for Kokkos implementation of SPECFEM2D package. This version of the package is able to simulate wave propagation through elastic homogeneous media in 2-Dimensions.
What's Changed
- New: Added support for GLL quadrature by @Rohit-Kakodkar in #5
- New: Read fortran mesh database files generated by xmeshfem2d by @Rohit-Kakodkar in #7
- New: Create a Mesh struct to store the mesh (The mesh is created by reading the database binaries created by xmeshfem2d) by @Rohit-Kakodkar in #8
- New: Implemeted a source class (Currently only Dirac sources are enabled in this version of the package) by @Rohit-Kakodkar in #20
- New: Implemented Newmark Timescheme, Implemented domain class to store wavefields by @Rohit-Kakodkar in #21
- New: Enabled GPU support (First working GPU implementation) by @Rohit-Kakodkar in #26
- New: Implemented a time-marching (explicit) solver to simulate wave propagation by @Rohit-Kakodkar in #28
- New: Enabled simulation setup using a parameter YAML file by @Rohit-Kakodkar in #31
- New: Added support for command line parsing by @Rohit-Kakodkar in #34
- New: Added cookbook example for simulating wave propagation through homogeneous media by @Rohit-Kakodkar in #39
- New: Implemented routines to compute and store seismographs (Implemented a seismograph writer) by @Rohit-Kakodkar in #43
- Thanks to @lsawade, @icui and @EtienneBachmann for their help with running the code and with changes to the documentation
New Contributors
- @Rohit-Kakodkar made their first contribution in #1
- @lsawade made their first contribution in #40
Full Changelog: https://github.com/PrincetonUniversity/specfem2d_kokkos/commits/v0.0.1-beta