Parent Directory | Revision Log | Revision Graph
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 | adcroft | 1.6 | C $Header: /u/gcmpack/models/MITgcmUV/model/inc/FFIELDS.h,v 1.5 1998/07/15 22:22:24 adcroft Exp $ |
2 | cnh | 1.1 | 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 | adcroft | 1.5 | C Qnet - Surface heat flux (converted to degrees/second) |
15 | C EmPmR - Evaporation - Precipitation - Runoff (converted to psu/second) | ||
16 | adcroft | 1.6 | 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 | adcroft | 1.4 | COMMON /FFIELDS/ |
20 | adcroft | 1.6 | & fu, |
21 | & fv, | ||
22 | & Qnet, | ||
23 | & EmPmR, | ||
24 | & SST, | ||
25 | & SSS, | ||
26 | & Qsw | ||
27 | cnh | 1.3 | _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 | adcroft | 1.6 | _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 | adcroft | 1.4 | _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 | adcroft | 1.6 | _RS Qsw (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
ViewVC Help | |
Powered by ViewVC 1.1.22 |