/[MITgcm]/MITgcm/model/inc/FFIELDS.h
ViewVC logotype

Contents of /MITgcm/model/inc/FFIELDS.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.6 - (show annotations) (download)
Wed May 5 18:32:34 1999 UTC (25 years ago) by adcroft
Branch: MAIN
CVS Tags: checkpoint28, checkpoint29, checkpoint21, checkpoint22, checkpoint23, checkpoint24, checkpoint25, checkpoint27, checkpoint26, checkpoint30
Changes since 1.5: +14 -18 lines
File MIME type: text/plain
Implemented new I/O package (mdsio.F). This package does parallel
I/O in much the same way as dfile.F used to except it uses "direct
access" rather than (f77) unformatted sequential access.

Problems with dfile.F package included:
  o unnecessary memory use (each process had two global sized buffers)
  o inability to read the files it had written without post-processing
  o "tiled" files were tiled by process/thread rather than actual tiles
  o created huge numbers of files with no alternatives

Features of the mdsio.F package:
  o direct-access binary writes
  o no excessive memory use
  o ability to read/write from multiple record files
  o "tiled" files are based on "WRAPPER" tiles so that the number
    and content of files is independent of the number of threads
    and/or processes
  o option to create single "global" files rather than "tiled" files
  o ability to read both "global" and "tiled" files
    [Caveat: the tiling of files must match the model tiles]
  o checkpoints now use a single file per model section
    ie.  one file for the hydrostatic model core, one file
    for the non-hydrostatic extensions and one file for the C-D
    extensions
  o the mid-level I/O routines now is broken into more source files
    read_write_fld.F supplies basic I/O routines with the same interface
                     as the original I/O package
    read_write_rec.F supplies I/O routines which allow multiple records
    write_state.F    writes the model state
    checkpoint.F     supplies the read/write checkpoint routines

All the example input data has had to be modified to be direct-access.
Otherwise only routines that used I/O have been affected and not
all of those have been due to the continuity of arguments in
the read_write_fld.F routines.

What needs to be done?  We have to create a suite of conversion
utilities for users with old-style data. Also supply the option
for using old-style I/O, not just for die-hards but for reading
data too extensive to be converted. And more...

1 C $Header: /u/gcmpack/models/MITgcmUV/model/inc/FFIELDS.h,v 1.5 1998/07/15 22:22:24 adcroft Exp $
2 C
3 C /==========================================================\
4 C | FFIELDS.h |
5 C | o Model forcing fields |
6 C |==========================================================|
7 C | The arrays here will need changing and customising for a |
8 C | particular experiment. |
9 C \==========================================================/
10 C
11 C-- For a classical "gyre" type experiment just one term is needed.
12 C fu - Zonal velocity tendency term ( m/s^2 )
13 C fv - Meridional velocity tendency term ( m/s^2 )
14 C Qnet - Surface heat flux (converted to degrees/second)
15 C EmPmR - Evaporation - Precipitation - Runoff (converted to psu/second)
16 C SST - Sea surface temperature (degrees) for relaxation
17 C SSS - Sea surface salinity (psu) for relaxation
18 C Qsw - Short-wave surface heat flux (converted to degrees/second)
19 COMMON /FFIELDS/
20 & fu,
21 & fv,
22 & Qnet,
23 & EmPmR,
24 & SST,
25 & SSS,
26 & Qsw
27 _RS fu (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
28 _RS fv (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
29 _RS Qnet (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
30 _RS EmPmR (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
31 _RS SST (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
32 _RS SSS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
33 _RS Qsw (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)

  ViewVC Help
Powered by ViewVC 1.1.22