40 |
MNC_FILE_CREATE( myThid, fname ) |
MNC_FILE_CREATE( myThid, fname ) |
41 |
MNC_FILE_OPEN( myThid, fname, itype ) |
MNC_FILE_OPEN( myThid, fname, itype ) |
42 |
MNC_FILE_ADD_ATTR_STR( myThid, fname, atname, sval ) |
MNC_FILE_ADD_ATTR_STR( myThid, fname, atname, sval ) |
43 |
MNC_FILE_ADD_ATTR_INT( myThid, fname, atname, ival ) |
MNC_FILE_ADD_ATTR_DBL( myThid, fname, atname, len, dval ) |
44 |
MNC_FILE_ADD_ATTR_DBL( myThid, fname, atname, dval ) |
MNC_FILE_ADD_ATTR_REAL(myThid, fname, atname, len, rval ) |
45 |
|
MNC_FILE_ADD_ATTR_INT( myThid, fname, atname, len, ival ) |
46 |
|
MNC_FILE_ADD_ATTR_ANY( myThid, fname, atname, atype, cs,len,dv,rv,iv ) |
47 |
... |
... |
48 |
MNC_FILE_READ_HEADER( myThid, fname ) |
MNC_FILE_READ_HEADER( myThid, fname ) |
49 |
|
|
53 |
MNC_GRID_INIT( myThid, fname, gname, ndim, dnames ) |
MNC_GRID_INIT( myThid, fname, gname, ndim, dnames ) |
54 |
MNC_GRID_SET_LL( myThid, fname, gname, type, lats, lons ) |
MNC_GRID_SET_LL( myThid, fname, gname, type, lats, lons ) |
55 |
|
|
56 |
MNC_VAR_INIT_DBL( myThid, fname, gname, vname, units, fillval ) |
MNC_VAR_INIT_DBL( myThid, fname, gname, vname, units ) |
57 |
MNC_VAR_INIT_REAL( myThid, fname, gname, vname, units, fillval ) |
MNC_VAR_INIT_REAL( myThid, fname, gname, vname, units ) |
58 |
MNC_VAR_INIT_INT( myThid, fname, gname, vname, units, fillval ) |
MNC_VAR_INIT_INT( myThid, fname, gname, vname, units ) |
59 |
MNC_VAR_ADD_ATTR_STR( myThid, fname, vname, name, atname, sval ) |
MNC_VAR_INIT_ANY( myThid, fname, gname, vname, units, type ) |
60 |
MNC_VAR_ADD_ATTR_INT( myThid, fname, vname, name, atname, ival ) |
MNC_VAR_ADD_ATTR_STR( myThid, fname, vname, atname, nv, sval ) |
61 |
MNC_VAR_ADD_ATTR_DBL( myThid, fname, vname, name, atname, dval ) |
MNC_VAR_ADD_ATTR_DBL( myThid, fname, vname, atname, nv, dval ) |
62 |
MNC_VAR_WRITE( myThid, fname, vname, var ) |
MNC_VAR_ADD_ATTR_REAL( myThid, fname, vname, atname, nv, rval ) |
63 |
|
MNC_VAR_ADD_ATTR_INT( myThid, fname, vname, atname, nv, ival ) |
64 |
|
MNC_VAR_ADD_ATTR_ANY( myThid, fname, vname, atname, atype, cs,len,dv,rv,iv ) |
65 |
|
MNC_VAR_WRITE_DBL( myThid, fname, vname, var ) |
66 |
|
MNC_VAR_WRITE_REAL( myThid, fname, vname, var ) |
67 |
|
MNC_VAR_WRITE_INT( myThid, fname, vname, var ) |
68 |
|
MNC_VAR_WRITE_ANY( myThid, fname, vname, vtype, dv, rv, iv ) |
69 |
... |
... |
70 |
MNC_VAR_READ( myThid, vname, var ) |
MNC_VAR_READ( myThid, fname, vname, var ) |
71 |
|
|
72 |
MNC_FILE_CLOSE( myThid, fname ) |
MNC_FILE_CLOSE( myThid, fname ) |
73 |
|
|
82 |
1) CNH pointed out that grid interpolation needs to be handled |
1) CNH pointed out that grid interpolation needs to be handled |
83 |
"on-the-fly" since pre-processing would result in overly large |
"on-the-fly" since pre-processing would result in overly large |
84 |
input files. We need an interpolation API... |
input files. We need an interpolation API... |
85 |
|
|
86 |
|
2) AM described her "diags" (or "myDiags" or "mDiags") interface |
87 |
|
which should use MNC for output. The data storage idea is similar |
88 |
|
to the MNC tables-of-indicies approach but also includes one huge |
89 |
|
double-precision "accumulator" to hold all the temporary values |
90 |
|
(eg. partial sums for averages, current max/mins): |
91 |
|
|
92 |
|
vname ( ni ) |
93 |
|
vlen ( ni ) |
94 |
|
vind ( ni ) -----+ |
95 |
|
| |
96 |
|
|
97 |
|
vij_diag ( i, j, [...] ) w/ lat/lon indicies |
98 |
|
vgl_diag ( [...] ) wo/ lat/lon indicies (global) |