Public Function Reference
Surface Calculation
- surf.load_tsdata(path, zgriddata, to_varname='to', so_varname='so', vert_dim='deptht', i_dim='x', j_dim='y', open_mf=False, **kwargs)
Create tsdata dictionary by loading from a standard NEMO output (typical a *grid-T.nc file) or a netcdf file containing the necessary temperature and salinity information.
Parameters
- path: String or List of Strings
Location(s) of the file(s) to read using xarray.open_dataset (default, open_mf=False) or xarray.open_mfdataset (open_mf=True)
If open_mf=False: A string in the form “/path/to/my/files/my_file.nc” If open_mf=True: A string glob in the form “/path/to/my/files/*.nc”
or an explicit list of files to open
- zgriddata: Dictionary
Must contain the following information about the vertical C-grid discretization
hgriddata[“tmask3d”]: DataArray (z_t, y, x) 3D mask for T-points using the NEMO masking convention (False = masked point)
- to_varname: String (optional, default = “to”)
Netcdf variable name for the potential or conservative temperature Can be found using ncdump -h your_file.nc
- so_varname: String (optional, default = “so”)
Netcdf variable name for the practical or absolute salinity Can be found using ncdump -h your_file.nc
- vert_dim: String (optional, default = “deptht”)
Dimension name for the vertical (k) axis. Can be found using ncdump -h your_file.nc
- i_dim: String (optional, default = “x”)
Dimension name for the i axis. Can be found using ncdump -h your_file.nc
- j_dim: String (optional, default = “y”)
Dimension name for the j axis. Can be found using ncdump -h your_file.nc
Returns
- tsdata: Dictionary
Contains the following information about the ocean temperature and salinity
tsdata[“to”]: DataArray (time, z_t, y, x) Potential or conservative temperature
tsdata[“so”]: DataArray (time, z_t, y, x) Practical or absolute salinity
- surf.find_omega_surfs(tsdata, neutralgrid, zgriddata, zpins, ipins, jpins, tpins, eos='gsw', eos_type='specvol', ITER_MAX=10, calc_veronis=True, calc_potsurf=True, ver_ipins=None, ver_jpins=None, ver_ref=0.0, pot_ref=0.0, **kwargs)
Calculate omega surfaces with a fixed point at a specific locations in time and space. There are options to also calculate the veronis density and/or the intersecting potential density surfaces for labelling or reference.
Parameters
- tsdata: Dictionary
Can be generated using load_tsdata, Must contain the following information about the ocean temperature and salinity.
tsdata[“to”]: DataArray (time, z_t, y, x) Potential or conservative temperature (depending on the equation of state, see eos argument)
tsdata[“so”]: DataArray (time, z_t, y, x) Practical or absolute salinity (depending on the equation of state, see eos argument)
- neutralgrid: Dictionary
(Description below from NeutralOcean documentation) Can be generated using build_nemo_hgrid Must contain the following:
- edgestuple of length 2
Each element is an array of int of length E, where E is the number of edges in the grid’s graph, i.e. the number of pairs of adjacent water columns (including land) in the grid. If edges = (a, b), the nodes (water columns) whose linear indices are a[i] and b[i] are adjacent.
- dist1d array
Horizontal distance between adjacent water columns (nodes). dist[i] is the distance between nodes whose linear indices are edges[0][i] and edges[1][i].
- distperp1d array
Horizontal distance of the face between adjacent water columns (nodes). distperp[i] is the distance of the interface between nodes whose linear indices are edges[0][i] and edges[1][i].
- zgriddata: Dictionary
Can be generated using load_zgriddata Must contain the following information about the vertical C-grid discretization
hgriddata[“deptht”]: DataArray (z_t, y, x) Depth of the T-points
- zpins: List of floats
Depths of the fixed points
- ipins: List of integers
i-indices of the fixed point
- jpins: List of integers
j-indices of the fixed point
- tpins: List of integers
time indices of the fixed point
- eos: String or Function or Tuple of Functions (optional, default=”gsw”)
Specification for the equation of state.
The definitions of temperature (potential vs conservative) and salinity (practical vs absolute) must match the equation of state. By default the “gsw” equation of state is used which depends on# absolute salinity and conservative temperature.
- Two premade options from NeutralOcean are described below:
“gsw” - TEOS-10 Gibbs Sea Water “jmd95” - Jackett and McDougall 1995 equation of state
(Description below from NeutralOcean documentation) If a str, can be any of the strings accepted by neutralocean.eos.tools.make_eos, e.g. ‘jmd95’, ‘jmdfwg06’, ‘gsw’.
If a function, must take three inputs corresponding to S, T, and P, and output the density (or specific volume). This form is not allowed when diags is True. This can be made as, e.g., eos = neutralocean.eos.make_eos(‘gsw’) for a non-Boussinesq ocean, or as eos = neutralocean.eos.make_eos(‘gsw’, grav, rho_c) for a Boussinesq ocean with grav and rho_c (see inputs below).
If a tuple of functions, the first element must be a function for the equation of state as above, and the second element must be a function taking the same three inputs as above and returning two outputs, namely the partial derivatives of the equation of state with respect to S and T. The second element can be made as, e.g., eos_s_t = neutralocean.eos.make_eos_s_t(‘gsw’, grav, rho_c)
The function (or the first element of the tuple of functions) should be @numba.njit decorated and need not be vectorized – it will be called many times with scalar inputs.
- eos_type: String
String describing the quantity returned by the equation of state. The options are
‘specvol’ : Specific volume used by gsw ‘insitu’ : In-situ density
- ITER_MAX: Integer (option, default=10)
Maximum number of iterations for omega surface calculation.
- ITER_MINInteger (option, default=1)
Minimum number of iterations for omega surface calculation.
- calc_veronis: Logical (default=True)
Calculate the Veronis density of each surface at their respective fixed location in time and space
- calc_potsurf: Logical (default=True)
Calculate the potential density surface which intersects the fixed point location in space and time. If you set ITER_MAX=0 while calc_potsurf=True, only potential density surfaces will be calculated.
- ver_ipins: None or Integer or list of Integers (default=None)
i-index (or indices) to calculate the Veronis density (if calc_veronis = True). If a single integer, then the Veronis density is calculate at the same position (ver_ipin, ver_jpin) for all surfaces (the preferred method for consisten Veronis density)
If None, then ver_ipins = ipins.
If a list of integers, then the length of the list must match ipins.
- ver_jpins: None or Integer or list of Integers (default=None)
j-index (or indices) to calculate the Veronis density (if calc_veronis = True). If a single integer, then the Veronis density is calculate at the same position (ver_ipin, ver_jpin) for all surfaces (the preferred method for consisten Veronis density)
If None, then ver_jpins = jpins.
If a list of integers, then the length of the list must match jpins.
- ver_ref:
Reference depth for the calculation of the Veronis density (if calc_veronis = True)
- pot_ref:
Reference depth for the calculation of the potential density (if calc_potsurf = True)
- kwargs:
Additional keyword arguments for neutralocean.surface.omega_surf
Returns
- surf_dataset: Dataset
Dataset containing all of the surfaces requested.
- surf.find_evolving_omega_surfs(tsdata, neutralgrid, zgriddata, zpins, ipins, jpins, tpins, calc_veronis=True, calc_potsurf=True, itmin=None, itmax=None, **kwargs)
Calculate time-evolving omega surfaces which intersect specific grid points at specific times There are options to also calculate the veronis density and/or the intersecting potential density surfaces for labelling or reference.
Parameters
- tsdata: Dictionary
Can be generated using load_tsdata, Must contain the following information about the ocean temperature and salinity.
tsdata[“to”]: DataArray (time, z_t, y, x) Potential or conservative temperature (depending on the equation of state, see eos argument)
tsdata[“so”]: DataArray (time, z_t, y, x) Practical or absolute salinity (depending on the equation of state, see eos argument)
- neutralgrid: Dictionary
(Description below from NeutralOcean documentation) Can be generated using build_nemo_hgrid Must contain the following:
- edgestuple of length 2
Each element is an array of int of length E, where E is the number of edges in the grid’s graph, i.e. the number of pairs of adjacent water columns (including land) in the grid. If edges = (a, b), the nodes (water columns) whose linear indices are a[i] and b[i] are adjacent.
- dist1d array
Horizontal distance between adjacent water columns (nodes). dist[i] is the distance between nodes whose linear indices are edges[0][i] and edges[1][i].
- distperp1d array
Horizontal distance of the face between adjacent water columns (nodes). distperp[i] is the distance of the interface between nodes whose linear indices are edges[0][i] and edges[1][i].
- zgriddata: Dictionary
Can be generated using load_zgriddata Must contain the following information about the vertical C-grid discretization
hgriddata[“deptht”]: DataArray (z_t, y, x) Depth of the T-points
- zpins: List of floats
Depths of the fixed points
- ipins: List of integers
i-indices of the fixed point
- jpins: List of integers
j-indices of the fixed point
- tpins: List of integers
time indices of the fixed point All time indices in tpins must lie between itmin and itmax if they’re specified
- calc_veronis: Logical (default=True)
Calculate the Veronis density of each surface at their respective fixed location in time and space
- calc_potsurf: Logical (default=True)
Calculate the potential density surface which intersects the fixed point location in space and time. If you set ITER_MAX=0 while calc_potsurf=True, only potential density surfaces will be calculated.
- itmin: Integer or None
itmin = None -> itmin will be set to the minimum time index itmin = Integer -> The surface will not be calculated for time indices
lower than itmin.
- itmax: Integer or None
itmax = None -> itmax will be set to the maximum time index itmax = Integer -> The surface will not be calculated for time indices
greater than itmax.
- kwargs:
Additional keyword arguments for find_omega_surfs This includes keyword arguments for the equation of state and the number of iterations in the omega surface calculation
Returns
- surf_out: Dataset
Dataset containing all of the time-evolving surfaces requested
- surf_pin: Dataset
Dataset containing the surfaces at the time they are pinned (t=tpin)
Grid Interpretation
- grid.build_nemo_hgrid(hgriddata, iperio=True, jperio=False, gridtype='rectilinear')
Create NeutralOcean grid object from a dictionary of horizontal grid variables.
Parameters
- hgriddata: Dictionary of DataArrays (xarray)
Describes the horizontal discretization. The dictionary can be automatically generated from standard NEMO outputs using grid.load_hgriddata or created by hand. Essential entries in the dictionary are the following:
hgriddata[“e1u”] -> U-cell widths in i direction hgriddata[“e1v”] -> U-cell widths in j direction hgriddata[“e2u”] -> V-cell widths in i direction hgriddata[“e2v”] -> V-cell widths in j direction
- iperio: Logical (optional, default=True)
Specifies periodicity in i-direction iperio = True -> i-coordinate is periodic (true on global ORCA grid)
- jperio: Logical (optional, default=False)
Specifies periodicity in j-direction jperio = True -> j-coordinate is periodic (false on global ORCA grid)
Returns
- neutralgrid: Dictionary
(Description below from NeutralOcean documentation) Containing the following:
- edgestuple of length 2
Each element is an array of int of length E, where E is the number of edges in the grid’s graph, i.e. the number of pairs of adjacent water columns (including land) in the grid. If edges = (a, b), the nodes (water columns) whose linear indices are a[i] and b[i] are adjacent.
- dist1d array
Horizontal distance between adjacent water columns (nodes). dist[i] is the distance between nodes whose linear indices are edges[0][i] and edges[1][i].
- distperp1d array
Horizontal distance of the face between adjacent water columns (nodes). distperp[i] is the distance of the interface between nodes whose linear indices are edges[0][i] and edges[1][i].
- grid.load_hgriddata(path, e1u_varname='e1u', e2u_varname='e2u', e1v_varname='e1v', e2v_varname='e2v', i_dim='x', j_dim='y', open_mf=False, **kwargs)
Create hgriddata dictionary by loading from a standard NEMO output (either a mesh_mask or domaincfg file) or a netcdf file containing the necessary C-grid information
Parameters
- path: String or List of Strings
Location(s) of the file(s) to read using xarray.open_dataset (default, open_mf=False) or xarray.open_mfdataset (open_mf=True)
If open_mf=False: A string in the form “/path/to/my/files/my_file.nc” If open_mf=True: A string glob in the form “/path/to/my/files/*.nc”
or an explicit list of files to open
- e1u_varname: String (optional, default = “e1u”)
Netcdf variable name for the U-cell width in the i-direction. Can be found using ncdump -h your_file.nc
- e2u_varname: String (optional, default = “e2u”)
Netcdf variable name for the U-cell width in the j-direction. Can be found using ncdump -h your_file.nc
- e1v_varname: String (optional, default = “e1v”)
Netcdf variable name for the V-cell width in the i-direction. Can be found using ncdump -h your_file.nc
- e2v_varname: String (optional, default = “e2v”)
Netcdf variable name for the V-cell width in the j-direction. Can be found using ncdump -h your_file.nc
- i_dim: String (optional, default = “x”)
Dimension name for the i axis. Can be found using ncdump -h your_file.nc
- j_dim: String (optional, default = “y”)
Dimension name for the j axis. Can be found using ncdump -h your_file.nc
- open_mf: Logical (optional, default = False)
- open_mf = False -> Load a dataset from a single netcdf file
(see xarray.open_dataset)
- open_mf = True -> Load a dataset from multiple netcdf files
(see xarray.open_mfdataset)
- kwargs: Keyword arguments
Keyword arguments for xarray.open_dataset (default, open_mf=False) or xarray.open_mfdataset (default, open_mf=True)
Returns
- hgriddata: Dictionary
Contains the following information about the horizontal C-grid discretization
hgriddata[“e1u”]: DataArray U-cell width in the i-direction
hgriddata[“e1v”]: DataArray V-cell width in the i-direction
hgriddata[“e2u”]: DataArray U-cell width in the j-direction
hgriddata[“e2v”]: DataArray V-cell width in the j-direction
If any of the above variables cannot be found in the netcdf file(s) then a warning message will appear and the variable will be missing in hgriddata.
- grid.load_zgriddata(path, deptht_varname='gdept_0', tmask3d_varname='tmask', tmask2d_varname='tmaskutil', vert_dim='nav_lev', i_dim='x', j_dim='y', open_mf=False, infer_tmask2d=False, blev_varname='bottom_level', infer_tmask3d=False, infer_path='nemo-T.nc', infer_varname='so', infer_tdim='time_counter', infer_idim='x', infer_jdim='y', infer_zdim='deptht', infer_val=None, calc_deptht=False, e3w_varname='e3w_0', **kwargs)
Create zgriddata dictionary by loading from a standard NEMO output (either a mesh_mask or domaincfg file) or a netcdf file containing the necessary C-grid information
Parameters
- path: String or List of Strings
Location(s) of the file(s) to read using xarray.open_dataset (default, open_mf=False) or xarray.open_mfdataset (open_mf=True)
If open_mf=False: A string in the form “/path/to/my/files/my_file.nc” If open_mf=True: A string glob in the form “/path/to/my/files/*.nc”
or an explicit list of files to open
- deptht_varname: String (optional, default = “gdept_0”)
Netcdf variable name for the T-cell depth. Can be found using ncdump -h your_file.nc
- tmask3d_varname: String (optional, default = “tmask”)
Netcdf variable name for the 3-dimensional (z,y,x) tmask. The mask must use the NEMO masking convention, 0 (or False) = Masked. Can be found using ncdump -h your_file.nc
- tmask2d_varname: String (optional, default = “tmaskutil”)
Netcdf variable name for the 2-dimensional (y,x) tmask. The mask must use the NEMO masking convention, 0 (or False) = Masked. Can be found using ncdump -h your_file.nc
- vert_dim: String (optional, default = “nav_lev”)
Dimension name for the vertical (k) axis. Can be found using ncdump -h your_file.nc
- i_dim: String (optional, default = “x”)
Dimension name for the i axis. Can be found using ncdump -h your_file.nc
- j_dim: String (optional, default = “y”)
Dimension name for the j axis. Can be found using ncdump -h your_file.nc
- calc_deptht: Logical (optional, default = False)
- calc_deptht = False -> Load deptht from the file using the variable name
defined by deptht_varname
calc_deptht = True -> Calculate deptht using cell thicknesses in the file
- e3w_varname: String (optional, default = ‘e3w_0’)
Only used if calc_deptht == True Variable name for W cell thickness in the file.
- infer_tmask2d: Logical (optional, default = False)
- infer_tmask2d = False -> Load the two-dimensional T mask from the file
using the variable name defined by tmask2d_varname
- infer_tmask2d = True -> Deduce the two-dimensional T mask from the bottom
level variable in the file. The bottom level variable name is defined by blev_varname
- blev_varname: String (optional, default = ‘bottom_level’)
Only used if infer_tmask2d == True Variable name for bottom level in the file
- infer_tmask3d: Logical (optional, default = False)
- infer_tmask3d = False -> Load the three-dimensional T mask from the file
using the variable name defined by tmask3d_varname
- infer_tmask3d = True -> Deduced the three-dimensional T mask from a file
defined by infer_path (infer_path can equal path), using the variable name defined by infer_varname. The dimension names for the variable are defined by infer_tdim, infer_idim, infer_jdim, infer_zdim (details below). The method for deducing the mask depends on the argument infer_val (see below).
- infer_val: String or Float (optional, default = None)
Only used if infer_tmask3d == True infer_val = None -> The three-dimensional T mask is deduced from the infer variable by
identifying null values (e.g. Nan).
- infer_val = Float -> The three-dimensional T mask is deduced from the infer variable by
finding occurences of infer_val. Where the infer variable == infer_val, tmask3d = False.
- infer_path: String (optional, default = “nemo-T.nc”)
Only used if infer_tmask3d == True Location of the file to read when deducing the three-dimensional T mask.
- infer_varname: String (optional, default = “so”)
Only used if infer_tmask3d == True Name of the variable to use when deducing the three-dimensional T mask.
- infer_tdim: String (optional, default = “time_counter”)
Only used if infer_tmask3d == True Dimension name for the time axis in the infer variable file (defined by infer_path) Can be found using ncdump -h your_file.nc
- infer_idim: String (optional, default = “x”)
Only used if infer_tmask3d == True Dimension name for the i axis in the infer variable file (defined by infer_path) Can be found using ncdump -h your_file.nc
- infer_jdim: String (optional, default = “y”)
Only used if infer_tmask3d == True Dimension name for the i axis in the infer variable file (defined by infer_path) Can be found using ncdump -h your_file.nc
- infer_zdim: String (optional, default = “deptht”)
Only used if infer_tmask3d == True Dimension name for the z axis in the infer variable file (defined by infer_path) Can be found using ncdump -h your_file.nc
- open_mf: Logical (optional, default = False)
- open_mf = False -> Load a dataset from a single netcdf file
(see xarray.open_dataset)
- open_mf = True -> Load a dataset from multiple netcdf files
(see xarray.open_mfdataset)
- kwargs: Keyword arguments
Keyword arguments for xarray.open_dataset (default, open_mf=False) or xarray.open_mfdataset (default, open_mf=True)
Returns
- zgriddata: Dictionary
Contains the following information about the vertical C-grid discretization
hgriddata[“deptht”]: DataArray (z_t, y, x) Depth of the T-points
hgriddata[“tmask3d”]: DataArray (z_t, y, x) 3D mask for T-points using the NEMO masking convention (False = masked point)
hgriddata[“tmask2d”]: DataArray (y, x) 2D mask for T-points using the NEMO masking convention (False = masked point)
If any of the above variables cannot be found in the netcdf file(s) then a warning message will appear and the variable will be missing in hgriddata.
Equation of State
- eos.NEMO_eos(eos_name, rn_a0=0.1655, rn_b0=0.7655, rn_nu=0.0024341, rn_lambda1=0.05952, rn_lambda2=0.00074914, rn_mu1=0.0001497, rn_mu2=1.109e-05)
Create a description of NEMO’s equation of state (TEOS10, EOS80, or SEOS), which is compatible with neutralocean.
Parameters
- eos_name: String
Name of the desired equation of state in NEMO = ‘teos10’ -> the polyTEOS-10-bsq equation of seawater (Roquet et al. 2015) = ‘eos80’ -> the polyEOS80-bsq equation of seawater = ‘seos’ -> A simplified equation of state inspired by Vallis (2006)
All equations use the default parameters used in the NEMO source code (as of v4.0.7). Namelist parameters for the simplified equation of state can be set with the keyword arguments below.
For a linear equation of state, only rn_a0 and rn_b0 should be non-zero (not default behaviour)
- rn_a0: float (optional, default = 1.655e-1)
Only used if eos_name = ‘seos’ seos parameter - Linear thermal expansion coefficient
- rn_b0: float (optional, default = 7.655e-1)
Only used if eos_name = ‘seos’ seos parameter - Linear haline expansion coefficient
- rn_nu: float (optional, default = 2.4341e-3)
Only used if eos_name = ‘seos’ seos parameter - Cabbeling coefficient for T*S
- rn_lambda1: float (optional, default = 5.9520e-2)
Only used if eos_name = ‘seos’ seos parameter - Cabbeling coefficient for T^2
- rn_lambda2: float (optional, default = 7.4914e-4)
Only used if eos_name = ‘seos’ seos parameter - Cabbeling coefficient for S^2
- rn_mu1: float (optional, default = 1.4970e-4)
Only used if eos_name = ‘seos’ seos parameter - Thermobaric coefficient for T
- rn_mu2: float (optional, default = 1.1090e-5)
Only used if eos_name = ‘seos’ seos parameter - Thermobaric coefficient for S
Returns
- ( eos, eos_s_t ): tuple
Tuple of functions describing the insitu density (eos) and it’s partial derivatives wrt temperature and salinity. These functions are compatible with neutralocean functions.
- eos.calc_seos(S, T, Z, rn_a0=0.1655, rn_b0=0.7655, rn_nu=0.0024341, rn_lambda1=0.05952, rn_lambda2=0.00074914, rn_mu1=0.0001497, rn_mu2=1.109e-05)
Calculates the insitu density of NEMO’s simplified equation of state (seos)
Parameters
- S: float
Salinity variable With seos, there is no distinction between Absolute and Practical Salinity
- T: float
Temperature variable With seos, there is no distinction between Conservative and Potential Temperature
- Z: float
Depth in metres
- rn_a0: float (optional, default = 1.655e-1)
seos parameter - Linear thermal expansion coefficient
- rn_b0: float (optional, default = 7.655e-1)
seos parameter - Linear haline expansion coefficient
- rn_nu: float (optional, default = 2.4341e-3)
seos parameter - Cabbeling coefficient for T*S
- rn_lambda1: float (optional, default = 5.9520e-2)
seos parameter - Cabbeling coefficient for T^2
- rn_lambda2: float (optional, default = 7.4914e-4)
seos parameter - Cabbeling coefficient for S^2
- rn_mu1: float (optional, default = 1.4970e-4)
seos parameter - Thermobaric coefficient for T
- rn_mu2: float (optional, default = 1.1090e-5)
seos parameter - Thermobaric coefficient for S
Returns
- rhofloat
The in-situ density [kg/m3]
- eos.calc_seos_s_t(S, T, Z, rn_a0=0.1655, rn_b0=0.7655, rn_nu=0.0024341, rn_lambda1=0.05952, rn_lambda2=0.00074914, rn_mu1=0.0001497, rn_mu2=1.109e-05)
Calculates the partial derivatives wrt S and T for NEMO’s simplified equation of state (seos, in-situ density).
Parameters
- S: float
Salinity variable With seos, there is no distinction between Absolute and Practical Salinity
- T: float
Temperature variable With seos, there is no distinction between Conservative and Potential Temperature
- Z: float
Depth in metres
- rn_a0: float (optional, default = 1.655e-1)
seos parameter - Linear thermal expansion coefficient
- rn_b0: float (optional, default = 7.655e-1)
seos parameter - Linear haline expansion coefficient
- rn_nu: float (optional, default = 2.4341e-3)
seos parameter - Cabbeling coefficient for T*S
- rn_lambda1: float (optional, default = 5.9520e-2)
seos parameter - Cabbeling coefficient for T^2
- rn_lambda2: float (optional, default = 7.4914e-4)
seos parameter - Cabbeling coefficient for S^2
- rn_mu1: float (optional, default = 1.4970e-4)
seos parameter - Thermobaric coefficient for T
- rn_mu2: float (optional, default = 1.1090e-5)
seos parameter - Thermobaric coefficient for S
Returns
- beta, alphatuple
Tuple of floats describing the derivate wrt salinity (beta) and temperature (alpha)
- eos.calc_eos(S, T, Z, eos_name)
Calculates the insitu density for either the TEOS10 or EOS80 equation of state.
Parameters
- S: float
Salinity variable if eos_name = ‘teos10’ -> Use Absolute Salinity if eos_name = ‘eos80’ -> Use Practical Salinity
- T: float
Temperature variable if eos_name = ‘teos10’ -> Use Conservative Temperature if eos_name = ‘eos80’ -> Use Potential Temperature
- Z: float
Depth in metres
- eos_name: String
Name of the desired equation of state in NEMO = ‘teos10’ -> the polyTEOS-10-bsq equation of seawater (Roquet et al. 2015) = ‘eos80’ -> the polyEOS80-bsq equation of seawater
All equations use the default parameters used in the NEMO source code (as of v4.0.7). Namelist parameters for the simplified equation of state can be set with the keyword arguments below.
Returns
- rhofloat
The in-situ density [kg/m3]
- eos.calc_eos_s_t(S, T, Z, eos_name)
Calculates the partial derivatives wrt S and T for either the TEOS10 or EOS80 equation of state (in-situ density).
Parameters
- S: float
Salinity variable if eos_name = ‘teos10’ -> Use Absolute Salinity if eos_name = ‘eos80’ -> Use Practical Salinity
- T: float
Temperature variable if eos_name = ‘teos10’ -> Use Conservative Temperature if eos_name = ‘eos80’ -> Use Potential Temperature
- Z: float
Depth in metres
- eos_name: String
Name of the desired equation of state in NEMO = ‘teos10’ -> the polyTEOS-10-bsq equation of seawater (Roquet et al. 2015) = ‘eos80’ -> the polyEOS80-bsq equation of seawater
All equations use the default parameters used in the NEMO source code (as of v4.0.7). Namelist parameters for the simplified equation of state can be set with the keyword arguments below.
Returns
- beta, alphatuple
Tuple of floats describing the derivate wrt salinity (beta) and temperature (alpha)