Menu

SUNTANS NetCDF File Examples

mrayson

NetCDF File Metadata

NCDUMP output of each SUNTANS netcdf file.

Output files

netcdf GalvHybrid_20100401_001 {
dimensions:
    numsides = 8 ;
    Nk = 20 ;
    time = UNLIMITED ; // (24 currently)
    Nkw = 21 ;
    Np = 90472 ;
    Nc = 44248 ;
    Ne = 134720 ;
    Two = 2 ;
variables:
    int suntans_mesh ;
        suntans_mesh:cf_role = "mesh_topology" ;
        suntans_mesh:long_name = "Topology data of 2D unstructured mesh" ;
        suntans_mesh:topology_dimension = "2" ;
        suntans_mesh:node_coordinates = "xp yp" ;
        suntans_mesh:face_node_connectivity = "cells" ;
        suntans_mesh:edge_node_connectivity = "edges" ;
        suntans_mesh:face_coordinates = "xv yv" ;
        suntans_mesh:edge_coordinates = "xe ye" ;
        suntans_mesh:face_edge_connectivity = "face" ;
        suntans_mesh:edge_face_connectivity = "grad" ;
    int cells(Nc, numsides) ;
        cells:cf_role = "face_node_connectivity" ;
        cells:long_name = "Maps every face to its corner nodes" ;
    int face(Nc, numsides) ;
        face:cf_role = "face_edge_connectivity" ;
        face:long_name = "Maps every face to its edges" ;
    int nfaces(Nc) ;
        nfaces:long_name = "Number of cell faces" ;
        nfaces:units = "" ;
        nfaces:coordinates = "xv yv" ;
    int edges(Ne, Two) ;
        edges:cf_role = "edge_node_connectivity" ;
        edges:long_name = "Maps every edge to the two nodes it connects" ;
    int neigh(Nc, numsides) ;
        neigh:cf_role = "face_face_connectivity" ;
        neigh:long_name = "Maps every face to its neighbouring faces" ;
    int grad(Ne, Two) ;
        grad:cf_role = "edge_face_connectivity" ;
        grad:long_name = "Maps every edge to the two faces it connects " ;
    int gradf(Ne, Two) ;
        gradf:long_name = "Index of face number for a particular cell " ;
    int mark(Ne) ;
        mark:long_name = "Edge marker type" ;
        mark:units = "0 - computational; 1 - closed; 2 flux BC; 3 - stage BC; 4 - other BC; 5 - interproc; 6 - ghost cell." ;
        mark:coordinates = "xe ye" ;
    int mnptr(Nc) ;
        mnptr:long_name = "Maps face indices between partitioned and unpartioned grid" ;
    int eptr(Ne) ;
        eptr:long_name = "Maps edge indices between partitioned and unpartioned grid" ;
    double xv(Nc) ;
        xv:standard_name = "Easting" ;
        xv:long_name = "Easting of 2D mesh face" ;
    double yv(Nc) ;
        yv:standard_name = "Northing" ;
        yv:long_name = "Northing of 2D mesh face" ;
    double xp(Np) ;
        xp:standard_name = "Easting" ;
        xp:long_name = "Easting of 2D mesh node" ;
    double yp(Np) ;
        yp:standard_name = "Northing" ;
        yp:long_name = "Northing of 2D mesh node" ;
    double xe(Ne) ;
        xe:standard_name = "Easting" ;
        xe:long_name = "Easting of 2D mesh edge" ;
    double ye(Ne) ;
        ye:standard_name = "Northing" ;
        ye:long_name = "Northing of 2D mesh edge" ;
    int normal(Nc, numsides) ;
        normal:long_name = "Dot product of unique normal with outward normal of each edge" ;
    double n1(Ne) ;
        n1:long_name = "x-component of the edge normal" ;
    double n2(Ne) ;
        n2:long_name = "y-component of the edge normal" ;
    double df(Ne) ;
        df:long_name = "edge length" ;
        df:units = "m" ;
    double dg(Ne) ;
        dg:long_name = "distance between faces on either side of edge" ;
        dg:units = "m" ;
    double def(Nc, numsides) ;
        def:long_name = "Distance between faces and edges" ;
        def:units = "m" ;
    double Ac(Nc) ;
        Ac:long_name = "Horizontal area of 2D mesh" ;
        Ac:units = "m2" ;
        Ac:mesh = "suntans_mesh" ;
        Ac:location = "face" ;
        Ac:coordinates = "xv yv" ;
    double dz(Nk) ;
        dz:long_name = "z layer spacing" ;
        dz:units = "m" ;
    double z_r(Nk) ;
        z_r:standard_name = "ocean_z_coordinate" ;
        z_r:long_name = "depth at layer mid points" ;
        z_r:units = "m" ;
        z_r:positive = "up" ;
    double z_w(Nkw) ;
        z_w:standard_name = "ocean_z_coordinate" ;
        z_w:long_name = "depth at layer edges" ;
        z_w:units = "m" ;
        z_w:positive = "up" ;
    int Nk(Nc) ;
        Nk:long_name = "Number of layers at face" ;
    int Nke(Ne) ;
        Nke:long_name = "Number of layers at edge" ;
    double dv(Nc) ;
        dv:stanford_name = "sea_floor_depth_below_geoid" ;
        dv:long_name = "seafloor depth" ;
        dv:units = "m" ;
        dv:mesh = "suntans_mesh" ;
        dv:location = "face" ;
        dv:coordinates = "xv yv" ;
    double dzz(time, Nk, Nc) ;
        dzz:_FillValue = 999999. ;
        dzz:long_name = "z layer spacing at faces" ;
        dzz:units = "m" ;
    double dzf(time, Nk, Ne) ;
        dzf:_FillValue = 999999. ;
        dzf:long_name = "z layer spacing at edges" ;
        dzf:units = "m" ;
    double time(time) ;
        time:long_name = "time" ;
        time:units = "seconds since 1990-01-01 00:00:00" ;
    double eta(time, Nc) ;
        eta:long_name = "Sea surface elevation" ;
        eta:units = "m" ;
        eta:mesh = "suntans_mesh" ;
        eta:location = "face" ;
        eta:coordinates = "time yv xv" ;
    double uc(time, Nk, Nc) ;
        uc:_FillValue = 999999. ;
        uc:long_name = "Eastward water velocity component" ;
        uc:units = "m s-1" ;
        uc:mesh = "suntans_mesh" ;
        uc:location = "face" ;
        uc:coordinates = "time z_r yv xv" ;
    double vc(time, Nk, Nc) ;
        vc:_FillValue = 999999. ;
        vc:long_name = "Northward water velocity component" ;
        vc:units = "m s-1" ;
        vc:mesh = "suntans_mesh" ;
        vc:location = "face" ;
        vc:coordinates = "time z_r yv xv" ;
    double w(time, Nkw, Nc) ;
        w:_FillValue = 999999. ;
        w:long_name = "Vertical water velocity component" ;
        w:units = "m s-1" ;
        w:mesh = "suntans_mesh" ;
        w:location = "face" ;
        w:coordinates = "time z_w yv xv" ;
    double nu_v(time, Nk, Nc) ;
        nu_v:_FillValue = 999999. ;
        nu_v:long_name = "Vertical eddy viscosity" ;
        nu_v:units = "m2 s-1" ;
        nu_v:mesh = "suntans_mesh" ;
        nu_v:location = "face" ;
        nu_v:coordinates = "time z_r yv xv" ;
    double salt(time, Nk, Nc) ;
        salt:_FillValue = 999999. ;
        salt:long_name = "Salinity" ;
        salt:units = "ppt" ;
        salt:mesh = "suntans_mesh" ;
        salt:location = "face" ;
        salt:coordinates = "time z_r yv xv" ;
    double temp(time, Nk, Nc) ;
        temp:_FillValue = 999999. ;
        temp:long_name = "Water temperature" ;
        temp:units = "degrees C" ;
        temp:mesh = "suntans_mesh" ;
        temp:location = "face" ;
        temp:coordinates = "time z_r yv xv" ;
    double rho(time, Nk, Nc) ;
        rho:_FillValue = 999999. ;
        rho:long_name = "Water density" ;
        rho:units = "kg m-3" ;
        rho:mesh = "suntans_mesh" ;
        rho:location = "face" ;
        rho:coordinates = "time z_r yv xv" ;
    double U(time, Nk, Ne) ;
        U:_FillValue = 999999. ;
        U:long_name = "Edge normal velocity" ;
        U:units = "m s-1" ;
        U:mesh = "suntans_mesh" ;
        U:location = "edge" ;
        U:coordinates = "time z_r ye xe" ;
    double Uwind(time, Nc) ;
        Uwind:long_name = "Eastward wind velocity component" ;
        Uwind:units = "m s-1" ;
        Uwind:mesh = "suntans_mesh" ;
        Uwind:location = "face" ;
        Uwind:coordinates = "time yv xv" ;
    double Vwind(time, Nc) ;
        Vwind:long_name = "Eastward wind velocity component" ;
        Vwind:units = "m s-1" ;
        Vwind:mesh = "suntans_mesh" ;
        Vwind:location = "face" ;
        Vwind:coordinates = "time yv xv" ;
    double Tair(time, Nc) ;
        Tair:long_name = "Air temperature" ;
        Tair:units = "degrees C" ;
        Tair:mesh = "suntans_mesh" ;
        Tair:location = "face" ;
        Tair:coordinates = "time yv xv" ;
    double Pair(time, Nc) ;
        Pair:long_name = "Air pressure" ;
        Pair:units = "millibar" ;
        Pair:mesh = "suntans_mesh" ;
        Pair:location = "face" ;
        Pair:coordinates = "time yv xv" ;
    double rain(time, Nc) ;
        rain:long_name = "Rain fall rate" ;
        rain:units = "kg m2 s-1" ;
        rain:mesh = "suntans_mesh" ;
        rain:location = "face" ;
        rain:coordinates = "time yv xv" ;
    double RH(time, Nc) ;
        RH:long_name = "Relative humidity" ;
        RH:units = "Percent (%)" ;
        RH:mesh = "suntans_mesh" ;
        RH:location = "face" ;
        RH:coordinates = "time yv xv" ;
    double cloud(time, Nc) ;
        cloud:long_name = "Cloud cover fraction" ;
        cloud:units = "" ;
        cloud:mesh = "suntans_mesh" ;
        cloud:location = "face" ;
        cloud:coordinates = "time yv xv" ;
    double Hs(time, Nc) ;
        Hs:long_name = "Sensible heat flux" ;
        Hs:units = "W m-2" ;
        Hs:mesh = "suntans_mesh" ;
        Hs:location = "face" ;
        Hs:coordinates = "time yv xv" ;
        Hs:positive = "down" ;
    double Hl(time, Nc) ;
        Hl:long_name = "Latent heat flux" ;
        Hl:units = "W m-2" ;
        Hl:mesh = "suntans_mesh" ;
        Hl:location = "face" ;
        Hl:coordinates = "time yv xv" ;
        Hl:positive = "down" ;
    double Hlw(time, Nc) ;
        Hlw:long_name = "Net longwave radiation flux" ;
        Hlw:units = "W m-2" ;
        Hlw:mesh = "suntans_mesh" ;
        Hlw:location = "face" ;
        Hlw:coordinates = "time yv xv" ;
        Hlw:positive = "down" ;
    double Hsw(time, Nc) ;
        Hsw:long_name = "Net shortwave radiation flux" ;
        Hsw:units = "W m-2" ;
        Hsw:mesh = "suntans_mesh" ;
        Hsw:location = "face" ;
        Hsw:coordinates = "time yv xv" ;
        Hsw:positive = "down" ;
    double tau_x(time, Nc) ;
        tau_x:long_name = "Eastward component surface wind stress" ;
        tau_x:units = "N m-2" ;
        tau_x:mesh = "suntans_mesh" ;
        tau_x:location = "face" ;
        tau_x:coordinates = "time yv xv" ;
    double tau_y(time, Nc) ;
        tau_y:long_name = "Northward component surface wind stress" ;
        tau_y:units = "N m-2" ;
        tau_y:mesh = "suntans_mesh" ;
        tau_y:location = "face" ;
        tau_y:coordinates = "time yv xv" ;
    double EP(time, Nc) ;
        EP:long_name = "Evaporation minus precipiaton" ;
        EP:units = "m s-1" ;
        EP:mesh = "suntans_mesh" ;
        EP:location = "face" ;
        EP:coordinates = "time yv xv" ;

// global attributes:
        :title = "SUNTANS NetCDF output file" ;
}

MongoDB Logo MongoDB
Gen AI apps are built with MongoDB Atlas
Atlas offers built-in vector search and global availability across 125+ regions. Start building AI apps faster, all in one place.