SPICE logo


The Fortran95 Computer Code for Finite-Difference Numerical Generation and Simulation of a 1D Seismic Wavefield in a 1D Heterogeneous Viscoelastic Medium Using the Velocity-Stress Staggered-Grid Finite-Difference Scheme

Authors: Jozef Kristek, Peter Moczo
General: Wave propagation
Code level: Training
Language: Fortran 90/95 or later
Associated groups: Numerical Methods
Supercomputing: Serial
Grid dimensions: 1D
Coordinate system: Cartesian
Method: Finite differences
Tested operating system: Linux, Windows
Rheology: Viscoelastic isotropic
Boundary conditions: Free surface (planar), Absorbing boundaries, Reflecting boundaries
Grid type: Rectangular, regular
Solution type: Numerical
Total hits: 6752

Additional resources

Latest Releases

Project Description

The program 1DFD_VS performs FD computations according to the velocity-stress staggered-grid FD scheme for a 1D wavefield in a 1D heterogeneous viscoelastic medium.

Two other programs,
• program MODEL_PREP_1D,
• program SOURTF,
perform the model and source-time function preparation as input data for the computational program 1DFD_DS.

The medium can be bounded from one side (in the programs it is the upper horizontal plane z=0) by either of the following boundaries:
• free surface (traction-free condition),
• plane of symmetry,
• rigid boundary,
• nonreflecting boundary (several types).

The medium can be bounded from the other side (the bottom horizontal plane z=z_max>0 ) by a nonreflecting boundary (several types).

The medium can be either
• perfectly elastic or
• viscoelastic with rheology given by the GMB-EK model.

The medium can be
• homogeneous,
• smoothly heterogeneous,
• piece-wise homogeneous (material discontinuities between neighboring homogeneous blocks),
• piece-wise smoothly heterogeneous (material discontinuities between neighboring smoothly heterogeneous blocks).

The material discontinuities can be placed anywhere within the spatial grid, that is, the position of the material discontinuity can be directly at the grid point or anywhere between two neighboring grid points.

The wavefield can be generated by a body-force term whose source-time function represents displacement.