next up previous print clean
Next: Acknowledgements Up: Introduction Previous: Applications

Interface design

The library operates with two fundamental objects, model/data vectors and operators. All vectors are SEP files stored on a disk, and are represented inside the library as SEP file tags Nichols et al. (1994). The operators are function calls that must conform with the following interface:

function oc_operator(adj,add, x_,yy_, op1 ...op9) result(stat)

where

The remaining of this paper functions as a reference of the main functions and subroutines available in the current version of oclib. Appendices F and F present a simple example (the Makefile and the main program).

Next table presentes a list of the main Fortran90 modules that compose the library.

Algebraic operations on files module oc_file_mod
  module of_filealgebra_mod
  module oc_filter_mod
Out-of-core operators module oc_adjnull_mod
  module oc_scale_mod
  module oc_weight_mod
  module oc_helicon_mod
  module oc_polydiv_mod
  module oc_laplacian_mod
  module oc_helocut_mod
  module oc_dottest_mod
  module oc_combine_mod
Out-of-core gradient solvers module oc_solver_mod
  module oc_solverreg_mod
  module oc_solverpre_mod
  module oc_sd_mod
  module oc_cg_mod
  module oc_cgstep_mod
  module oc_cd_mod
  module oc_gmres_mod
Out-of-core LSQR solvers module oc_lsqr_mod
  module oc_lsqrreg_mod
  module oc_lsqrpre_mod

The appendices A, B, C, and D present a detailed description of the interfaces for the main functions and subroutines in each module.


next up previous print clean
Next: Acknowledgements Up: Introduction Previous: Applications
Stanford Exploration Project
4/16/2001