This package defines the data structure IWAVE for a timestepping simulator on a regular spatial grid. IWAVE consists pricipally of two structs: IMODEL, a coherent collection of RDOMAIN structs defining arrays and virtual subarrays participating in the simulation, and FD_MODEL, containing function pointers referenced in the functions implementing the simulation.
To create a simulator using IWAVE, it is necessary to define functions conforming to the interfaces listed in FD_MODEL and implementing the computations described in its documentation. These include time step and i/o functions and various auxiliary functions which provide the basic information necessary to set up ghost cell arrays for boundary conditions and data exchange in domain decomposition.
Parallel Simulations with IWAVE gives operational details for parallel simulation via domain decomposition and simultaneous shots.
Notes on Modeling with IWAVE overview parameter parsing, units, word order, and other details.
Several other packages support this one, including