Project

General

Profile

Interpolate data from u-grid points to t-grid points, cur... ยป input_output_info.txt

Mariana Maia Pacheco, 2022-12-13 12:11

 
From ncdump -h CM2.6.ocean.static.nc:

netcdf CM2.6.ocean.static {
dimensions:
xt_ocean = 3600 ;
yt_ocean = 2700 ;
xu_ocean = 3600 ;
yu_ocean = 2700 ;
variables:
double xt_ocean(xt_ocean) ;
xt_ocean:long_name = "tcell longitude" ;
xt_ocean:units = "degrees_E" ;
xt_ocean:cartesian_axis = "X" ;
double yt_ocean(yt_ocean) ;
yt_ocean:long_name = "tcell latitude" ;
yt_ocean:units = "degrees_N" ;
yt_ocean:cartesian_axis = "Y" ;
double xu_ocean(xu_ocean) ;
xu_ocean:long_name = "ucell longitude" ;
xu_ocean:units = "degrees_E" ;
xu_ocean:cartesian_axis = "X" ;
double yu_ocean(yu_ocean) ;
yu_ocean:long_name = "ucell latitude" ;
yu_ocean:units = "degrees_N" ;
yu_ocean:cartesian_axis = "Y" ;
float geolon_t(yt_ocean, xt_ocean) ;
geolon_t:long_name = "tracer longitude" ;
geolon_t:units = "degrees_E" ;
geolon_t:valid_range = -281.f, 361.f ;
geolon_t:missing_value = 1.e+20f ;
geolon_t:_FillValue = 1.e+20f ;
geolon_t:cell_methods = "time: point" ;
geolon_t:coordinates = "geolon_t geolat_t" ;
float geolat_t(yt_ocean, xt_ocean) ;
geolat_t:long_name = "tracer latitude" ;
geolat_t:units = "degrees_N" ;
geolat_t:valid_range = -91.f, 91.f ;
geolat_t:missing_value = 1.e+20f ;
geolat_t:_FillValue = 1.e+20f ;
geolat_t:cell_methods = "time: point" ;
geolat_t:coordinates = "geolon_t geolat_t" ;
float geolon_c(yu_ocean, xu_ocean) ;
geolon_c:long_name = "uv longitude" ;
geolon_c:units = "degrees_E" ;
geolon_c:valid_range = -281.f, 361.f ;
geolon_c:missing_value = 1.e+20f ;
geolon_c:_FillValue = 1.e+20f ;
geolon_c:cell_methods = "time: point" ;
geolon_c:coordinates = "geolon_c geolat_c" ;
float geolat_c(yu_ocean, xu_ocean) ;
geolat_c:long_name = "uv latitude" ;
geolat_c:units = "degrees_N" ;
geolat_c:valid_range = -91.f, 91.f ;
geolat_c:missing_value = 1.e+20f ;
geolat_c:_FillValue = 1.e+20f ;
geolat_c:cell_methods = "time: point" ;
geolat_c:coordinates = "geolon_c geolat_c" ;
float ht(yt_ocean, xt_ocean) ;
ht:long_name = "ocean depth on t-cells" ;
ht:units = "m" ;
ht:valid_range = -1.e+09f, 1.e+09f ;
ht:missing_value = -1.e+20f ;
ht:_FillValue = -1.e+20f ;
ht:cell_methods = "time: point" ;
ht:coordinates = "geolon_t geolat_t" ;
ht:standard_name = "sea_floor_depth_below_geoid" ;
float hu(yu_ocean, xu_ocean) ;
hu:long_name = "ocean depth on u-cells" ;
hu:units = "m" ;
hu:valid_range = -1.e+09f, 1.e+09f ;
hu:missing_value = -1.e+20f ;
hu:_FillValue = -1.e+20f ;
hu:cell_methods = "time: point" ;
hu:coordinates = "geolon_c geolat_c" ;
float area_t(yt_ocean, xt_ocean) ;
area_t:long_name = "tracer cell area" ;
area_t:units = "m^2" ;
area_t:valid_range = 0.f, 1.e+15f ;
area_t:missing_value = 1.e+20f ;
area_t:_FillValue = 1.e+20f ;
area_t:cell_methods = "time: point" ;
area_t:coordinates = "geolon_t geolat_t" ;
float area_u(yu_ocean, xu_ocean) ;
area_u:long_name = "velocity cell area" ;
area_u:units = "m^2" ;
area_u:valid_range = 0.f, 1.e+15f ;
area_u:missing_value = 1.e+20f ;
area_u:_FillValue = 1.e+20f ;
area_u:cell_methods = "time: point" ;
area_u:coordinates = "geolon_c geolat_c" ;
float kmt(yt_ocean, xt_ocean) ;
kmt:long_name = "number of depth levels on t-grid" ;
kmt:units = "dimensionless" ;
kmt:valid_range = -10.f, 1.e+09f ;
kmt:missing_value = -1.e+20f ;
kmt:_FillValue = -1.e+20f ;
kmt:cell_methods = "time: point" ;
kmt:coordinates = "geolon_t geolat_t" ;
float kmu(yu_ocean, xu_ocean) ;
kmu:long_name = "number of depth levels on u-grid" ;
kmu:units = "dimensionless" ;
kmu:valid_range = -10.f, 1.e+09f ;
kmu:missing_value = -1.e+20f ;
kmu:_FillValue = -1.e+20f ;
kmu:cell_methods = "time: point" ;
kmu:coordinates = "geolon_c geolat_c" ;

// global attributes:
:NCO = "4.0.3" ;
}

# velocity field to be interpolated
From ncdump -h CM2.6_A_V03_1PctTo4X01810101.ocean_minibling_field_u_lev01.nc:

netcdf CM2.6_A_V03_1PctTo4X01810101.ocean_minibling_field_u_lev01 {
dimensions:
time = UNLIMITED ; // (73 currently)
nv = 2 ;
st_edges_ocean = 51 ;
st_ocean = 1 ;
yu_ocean = 2700 ;
xu_ocean = 3600 ;
variables:
double average_DT(time) ;
average_DT:long_name = "Length of average period" ;
average_DT:units = "days" ;
average_DT:missing_value = 1.e+20 ;
average_DT:_FillValue = 1.e+20 ;
double average_T1(time) ;
average_T1:long_name = "Start time for average period" ;
average_T1:units = "days since 0001-01-01 00:00:00" ;
average_T1:missing_value = 1.e+20 ;
average_T1:_FillValue = 1.e+20 ;
double average_T2(time) ;
average_T2:long_name = "End time for average period" ;
average_T2:units = "days since 0001-01-01 00:00:00" ;
average_T2:missing_value = 1.e+20 ;
average_T2:_FillValue = 1.e+20 ;
double nv(nv) ;
nv:long_name = "vertex number" ;
nv:units = "none" ;
nv:cartesian_axis = "N" ;
double st_edges_ocean(st_edges_ocean) ;
st_edges_ocean:long_name = "tcell zstar depth edges" ;
st_edges_ocean:units = "meters" ;
st_edges_ocean:cartesian_axis = "Z" ;
st_edges_ocean:positive = "down" ;
double st_ocean(st_ocean) ;
st_ocean:long_name = "tcell zstar depth" ;
st_ocean:units = "meters" ;
st_ocean:cartesian_axis = "Z" ;
st_ocean:positive = "down" ;
st_ocean:edges = "st_edges_ocean" ;
double time(time) ;
time:long_name = "time" ;
time:units = "days since 0001-01-01 00:00:00" ;
time:cartesian_axis = "T" ;
time:calendar_type = "JULIAN" ;
time:calendar = "JULIAN" ;
time:bounds = "time_bounds" ;
double time_bounds(time, nv) ;
time_bounds:long_name = "time axis boundaries" ;
time_bounds:units = "days" ;
time_bounds:missing_value = 1.e+20 ;
time_bounds:_FillValue = 1.e+20 ;
float u(time, st_ocean, yu_ocean, xu_ocean) ;
u:long_name = "i-current" ;
u:units = "m/sec" ;
u:valid_range = -10.f, 10.f ;
u:missing_value = -1.e+20f ;
u:_FillValue = -1.e+20f ;
u:cell_methods = "time: mean" ;
u:time_avg_info = "average_T1,average_T2,average_DT" ;
u:coordinates = "geolon_c geolat_c" ;
u:standard_name = "sea_water_x_velocity" ;
double xu_ocean(xu_ocean) ;
xu_ocean:long_name = "ucell longitude" ;
xu_ocean:units = "degrees_E" ;
xu_ocean:cartesian_axis = "X" ;
double yu_ocean(yu_ocean) ;
yu_ocean:long_name = "ucell latitude" ;
yu_ocean:units = "degrees_N" ;
yu_ocean:cartesian_axis = "Y" ;

// global attributes:
:filename = "01810101.ocean_minibling_field_u.nc" ;
:title = "CM2.6_miniBling" ;
:grid_type = "mosaic" ;
:grid_tile = "1" ;


# resulting velocity field in the t grid
From ncdump -h CM2.6_A_V03_1PctTo4X01820101.ocean_minibling_field_u_lev01_test2.nc:

netcdf CM2.6_A_V03_1PctTo4X01820101.ocean_minibling_field_u_lev01_test2 {
dimensions:
time = UNLIMITED ; // (73 currently)
bnds = 2 ;
xt_ocean = 3600 ;
yt_ocean = 2623 ;
st_ocean = 1 ;
variables:
double time(time) ;
time:standard_name = "time" ;
time:long_name = "time" ;
time:bounds = "time_bnds" ;
time:units = "days since 0001-01-01 00:00:00" ;
time:calendar = "standard" ;
time:axis = "T" ;
double time_bnds(time, bnds) ;
float geolon_t(yt_ocean, xt_ocean) ;
geolon_t:standard_name = "longitude" ;
geolon_t:long_name = "tracer longitude" ;
geolon_t:units = "degrees_E" ;
geolon_t:_CoordinateAxisType = "Lon" ;
float geolat_t(yt_ocean, xt_ocean) ;
geolat_t:standard_name = "latitude" ;
geolat_t:long_name = "tracer latitude" ;
geolat_t:units = "degrees_N" ;
geolat_t:_CoordinateAxisType = "Lat" ;
double xt_ocean(xt_ocean) ;
xt_ocean:standard_name = "projection_x_coordinate" ;
xt_ocean:long_name = "tcell longitude" ;
xt_ocean:units = "degrees_E" ;
xt_ocean:axis = "X" ;
double yt_ocean(yt_ocean) ;
yt_ocean:standard_name = "projection_y_coordinate" ;
yt_ocean:long_name = "tcell latitude" ;
yt_ocean:units = "degrees_N" ;
yt_ocean:axis = "Y" ;
double st_ocean(st_ocean) ;
st_ocean:long_name = "tcell zstar depth" ;
st_ocean:units = "meters" ;
st_ocean:positive = "down" ;
st_ocean:axis = "Z" ;
st_ocean:cartesian_axis = "Z" ;
st_ocean:edges = "st_edges_ocean" ;
double average_DT(time) ;
average_DT:long_name = "Length of average period" ;
average_DT:units = "days" ;
average_DT:_FillValue = 1.e+20 ;
average_DT:missing_value = 1.e+20 ;
float u(time, st_ocean, yt_ocean, xt_ocean) ;
u:standard_name = "sea_water_x_velocity" ;
u:long_name = "i-current" ;
u:units = "m/sec" ;
u:coordinates = "geolat_t geolon_t" ;
u:_FillValue = -1.e+20f ;
u:missing_value = -1.e+20f ;
u:cell_methods = "time: mean" ;
u:time_avg_info = "average_T1,average_T2,average_DT" ;
    (1-1/1)