SPMODEL: A Series of Hierarchical Spectral Models for Geophyiscal Fluid Dynamics

Shin-ichi Takehiro (Research Institute for Mathematical Sciences, Kyoto University)
Masatsugu Odaka  (Graduate school of Sciences, Hokkaido University)
Keiichi Ishioka (Graduate school of Sciences, Kyoto University)
Masaki Ishiwatari (Graduate School of Environmental Earth Science, Hokkaido University)
Yoshi-Yuki Hayashi (Graduate school of Sciences, Hokkaido University)
SPMODEL Development Group (GFD Dennou Club)

(Received 25 January,2006; in revised form 28 August,2006)


A series of spectral models which enable easy execution of standard numerical experiments in earth and planetary fluid dynamics problems have been developed. The following three requirements were given priority in designing the program source codes; 1) allow anyone to read, use, and modify the source codes, 2) readability and understandability of the source codes to permit easy re-building and/or modification, 3) ease in visualization and post-processing of output data. In order to improve readability and modifiability, Fortran90 modules are prepared to provide the subroutines of ISPACK, a FORTRAN77 library for spectral models, as array-valued functions. With the help of the introduction of systematic function naming rules and the use of array-handling features enhanced by Fortran90, program source codes can now be written with a form which is easily deduced from the mathematical expressions of the governing equations. The programming technique realized in this study is expected to save both time and labor in creating numerical models from governing equations, as well as facilitate numerical experiments in geophysical fluid dynamics.


  1. Introduction
  2. Array operation features of Fortran90
    1. Array operation
    2. User-defined array-valued functions
  3. SPMODEL library (spml)
    1. Examples of subroutines and functions
    2. Naming convention of functions and programming style
  4. SPMODEL programming
    1. Programing procedure in SPMODEL
    2. The advantages of SPMODEL programming
  5. Examples of programs and numerical results
    1. The KdV equation in a one-dimensional cyclic domain
    2. A β-plane barotropic model on a two-dimensional double cyclic domain
    3. A thermal convection model of the Boussinesq fluid in a two-dimensional channel domain
    4. A shallow water model on a two-dimensional rotating sphere
  6. Summary
  7. Acknowledgements
  8. References
  9. Authors and addresses


  1. Evaluation of non-linear terms: the transform method
  2. Input and output of data: gtool4 netCDF convention and gt4f90io library
  3. Post-processing and visualization of the output data: GFD-Dennou ruby project


Jump to "Nagare Multimedia" top page
©1998-2008 The Japan Society of Fluid Mechanics, ALL RIGHTS RESERVED.