All Projects → geodynamics → axisem

geodynamics / axisem

Licence: other
AxiSEM is a parallel spectral-element method to solve 3D wave propagation in a sphere with axisymmetric or spherically symmetric visco-elastic, acoustic, anisotropic structures.

Programming Languages

fortran
972 projects
TeX
3793 projects
python
139335 projects - #7 most used programming language
shell
77523 projects
matlab
3953 projects
perl
6916 projects

Projects that are alternatives of or similar to axisem

Edge
Extreme-scale Discontinuous Galerkin Environment (EDGE)
Stars: ✭ 18 (-47.06%)
Mutual labels:  mpi, high-performance-computing
PencilArrays.jl
Distributed Julia arrays using the MPI protocol
Stars: ✭ 40 (+17.65%)
Mutual labels:  mpi, high-performance-computing
Dash
DASH, the C++ Template Library for Distributed Data Structures with Support for Hierarchical Locality for HPC and Data-Driven Science
Stars: ✭ 134 (+294.12%)
Mutual labels:  mpi, high-performance-computing
PencilFFTs.jl
Fast Fourier transforms of MPI-distributed Julia arrays
Stars: ✭ 48 (+41.18%)
Mutual labels:  mpi, high-performance-computing
t8code
Parallel algorithms and data structures for tree-based AMR with arbitrary element shapes.
Stars: ✭ 37 (+8.82%)
Mutual labels:  mpi, high-performance-computing
libquo
Dynamic execution environments for coupled, thread-heterogeneous MPI+X applications
Stars: ✭ 21 (-38.24%)
Mutual labels:  mpi
stantargets
Reproducible Bayesian data analysis pipelines with targets and cmdstanr
Stars: ✭ 31 (-8.82%)
Mutual labels:  high-performance-computing
PSyclone
Domain-specific compiler for Finite Difference/Volume/Element Earth-system models in Fortran
Stars: ✭ 67 (+97.06%)
Mutual labels:  high-performance-computing
mptrac
Massive-Parallel Trajectory Calculations (MPTRAC) is a Lagrangian particle dispersion model for the analysis of atmospheric transport processes in the troposphere and stratosphere.
Stars: ✭ 19 (-44.12%)
Mutual labels:  high-performance-computing
iot-master
物联大师是开源免费的物联网智能网关系统,集成了标准Modbus和主流PLC等多种协议,支持数据采集、公式计算、定时控制、自动控制、异常报警、流量监控、Web组态、远程调试等功能,适用于大部分物联网和工业互联网应用场景。
Stars: ✭ 119 (+250%)
Mutual labels:  mpi
obsplus
A Pandas-Centric ObsPy Expansion Pack
Stars: ✭ 28 (-17.65%)
Mutual labels:  seismology
fteikpy
Accurate Eikonal solver for Python
Stars: ✭ 34 (+0%)
Mutual labels:  seismology
vulk
Desktop/Android Python game development framework on top of Vulkan API
Stars: ✭ 31 (-8.82%)
Mutual labels:  high-performance-computing
es pytorch
High performance implementation of Deep neuroevolution in pytorch using mpi4py. Intended for use on HPC clusters
Stars: ✭ 20 (-41.18%)
Mutual labels:  mpi
mtuq
moment tensor uncertainty quantification
Stars: ✭ 40 (+17.65%)
Mutual labels:  seismology
petgem
petgem is a parallel and high-order code for active-source (e.g. CSEM) and passive-source (e.g. MT) geophysics electromagnetic modeling in 3D arbitrary marine/land problems under anisotropic conductivities.
Stars: ✭ 18 (-47.06%)
Mutual labels:  high-performance-computing
eventgrad
Event-Triggered Communication in Parallel Machine Learning
Stars: ✭ 14 (-58.82%)
Mutual labels:  mpi
mloperator
Machine Learning Operator & Controller for Kubernetes
Stars: ✭ 85 (+150%)
Mutual labels:  mpi
gblastn
G-BLASTN is a GPU-accelerated nucleotide alignment tool based on the widely used NCBI-BLAST.
Stars: ✭ 52 (+52.94%)
Mutual labels:  high-performance-computing
seispy
Python module of seismology and receiver functions
Stars: ✭ 50 (+47.06%)
Mutual labels:  seismology

AxiSEM 1.4 Build Status

Axially symmetric Spectral Element Method

Copyright 2018, Tarje Nissen-Meyer, Martin van Driel, Simon Stähler, Kasra Hosseini, Stefanie Hempel, Lion Krischer, Alexandre Fournier

Webpage and distribution: http://www.axisem.info Contact and information: [email protected]

April, 13, 2018

Citation

If you are publishing results obtained with this code, please cite this paper:

T. Nissen-Meyer, M. van Driel, S. C. Staehler, K. Hosseini, S. Hempel, L. Auer, A. Colombi and A. Fournier: "AxiSEM: broadband 3-D seismic wavefields in axisymmetric media", Solid Earth, 5, 425-445, 2014 doi:10.5194/se-5-425-2014 http://www.solid-earth.net/5/425/2014/

Content of the repository

manual_axisem_1.4.pdf - PDF manual

MESHER - The program to generate 2D meshes for the SEM forward solver

SOLVER - the SEM forward solver itself

submit.py - a Python script to create an Instaseis database

make_axisem.macros - macro file to set compiler options

copytemplates.sh - reset all input files to default templates

COPYING - The GNU General Public License

HISTORY - changelog

README - this file

Basic instructions for running:

More details are found in the manual. For a quick start:

  • The mesher has to be run first to generate a SEM mesh for the solver.
  • Any changes in the resolution, spherically symmetric background model, or number of processors requires a new mesh.
  • Changes in the source-receiver settings or 2.5D heterogeneities only need a new solver run.
  • Changes on the moment tensor, receiver components, or filtering only need a new postprocessing run.
  • Using Instaseis, seismograms for any depth or moment tensor can be calculated from the wavefield of one force source at the surface.

General settings and explanations for parameters needed in MESHER and SOLVER are found in the inparam_* files in the respective directories.

To create Instaseis databases quickly, run the script submit.py in the main directory.

  1. Run copytemplates.sh to set up a generic run with pre-set parameters

  2. Go into the MESHER directory, run ./submit.csh. This compiles the code using gfortran and mpif90 as default compilers, and then submits a job on a single node. For high resolution (seismic period below 3s), this requires significant amounts of RAM, see manual.

  3. Check OUTPUT; if finished, then run ./movemesh.csh <MESH_NAME>

  4. go into SOLVER, check the vtk files in /MESHES/<MESH_NAME> with Paraview, if you want

  5. Edit inparam_basic to the desired <MESH_NAME>

  6. Run ./submit.csh <RUN_NAME> , this compiles and then submits a parallel run.

  7. Check <RUN_NAME>/OUTPUT*, which will record the progress of the run and any problems.

  8. All data-related output is in <RUN_NAME>/Data/

  9. Convolution with a STF and summation for a moment source is done by running postprocessing.csh in <RUN_NAME>

  10. A more modern and efficient way of seismogram retrieval is using Instaseis, a Python toolbox to retrieve seismograms for arbitrary depths and moment tensors from the stored wavefield of one AxiSEM run (http://www.instaseis.net)

Detailed instructions can be found in the file manual_axisem_1.4.pdf

Installation

Generally, AxiSEM needs

  • a C and a Fortran90 compiler (typically gcc and gfortran)
  • MPI (typically OpenMPI)
  • NetCDF (not absolutely necessary, but needed to create an Instaseis database)

MacOS X

The easiest way to install the necessary requirements is homebrew (https://brew.sh/). If you have not installed homebrew itself yet, do so as described on the homepage. The preferred way (as of May 2022) is

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

and follow the steps therein.

Afterwards, install gfortran, openmpi and NetCDF with

brew install gfortran gcc openmpi netcdf hdf5-mpi

Linux

The necessary packages can easily be installed using APT

sudo apt install gfortran gcc libopenmpi-dev openmpi-bin libnetcdff-dev 
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].