634
R. Feistel et al.: Oceanographic application and numerical implementation of TEOS-IO: Part 1
Ocean Sci., 6, 633-677, 2010
www.ocean-sci.net/6/633/2010/
Additional library versions are available for specibc applica
tion purposes such as the Gibbs SeaWater (GSW) Library for
oceanographic models (IOC et al., 2010), consistent with the
one described in this paper. This SIA library replaces (i.e.,
updates and extends) the code versions published previously
(Feistel, 2005; Feistel et al., 2005).
In this paper we provide formulas, derivations and expla
nations for the quantities implemented in the library and their
thermodynamic relations to the potential functions. The lat
ter are basic relations which remain valid independent of any
details of the fits used to approximate the potentials or the
numerics used to evaluate the functional relations; they will
not change when new approximations to the thermodynamic
potentials are determined in the future.
The oceanographic applications of the quantities discussed
here are explained in detail in IOC et al. (2010). Formulas for
seawater properties at the ocean-atmosphere interface such
as the vapour pressure and the latent heat in equilibrium with
humid air consistent with the library functions described here
are developed in a separate article (Feistel et al., 2010a). Ad
ditional details on the library structure and the numerical im
plementation are available from a companion paper (Wright
et al., 2010a).
The code is organised in vertical columns representing the
four constituents: fluid water, ice, seawater and air, and in
horizontal levels with increasing complexity at higher lev
els. The code is hierarchically organised; higher level rou
tines make use of routines from lower levels but code at each
level neither needs nor has access to procedures from higher
levels. Level 0 provides fundamental constants, mathemat
ical methods and formulae for conversions between Abso
lute Salinity and Practical Salinity given the measurement
location plus some general relations. Level 1 contains the
Primary Standards, i.e. the thermodynamic potentials, their
basic constants and coefficients, and further necessary em
pirical or theoretical functions. Levels 2-4 contain proper
ties derived directly or indirectly from level 1 by mathemat
ical and numerical manipulations without additional empiri
cal formulas or constants. Level 2 contains explicit relations.
Levels 3 and 4 require iteration procedures to numerically
solve implicit equations. Levels 1-3 describe only single
phase properties, while level 4 procedures calculate phase
equilibria and properties of composite, multi-phase systems.
Level 5 is an additional application layer within which input
and output units may be more convenient for the user than
the basic SI units that are used rigorously at the lower lev
els. Level 5 also contains additional empirical coefficients in
speed-optimized code, derived as “approximate” correlation
functions representing reduced data sets computed from the
lower, “exact” levels.
The following sections explain the thermodynamic rela
tions and auxiliary equations implemented in the library level
by level, with the exception of level 0, which provides gen
eral information required by the library, and level 5, which is
only numerically different from the lower ones. Within each
level, the sections consider the four columns or their combi
nations. In the appendix, the formulas are described which
are implemented in the library to iteratively solve implicit
equations. When appropriate, function names defined in the
library are mentioned in the text of this paper along with the
related equations; they are emphasized by means of a distinct
font type. The complete list of modules and functions avail
able from the library is described in the companion paper,
Part 2 (Wright et al., 2010a).
The core levels 1-4 of the SIA library take as input pa
rameters absolute pressure in Pa, absolute ITS-90 tempera
ture in K, and Absolute Salinity in kg/kg. Absolute Salin
ity of Standard Seawater is most accurately estimated by
Reference Salinity (Millero et al., 2008) which is propor
tional to Practical Salinity in the valid range of the 1978
Practical Salinity Scale (PSS-78). For seawater with com
position anomalies, estimates for the difference between Ab
solute and Reference Salinity are available for the global
ocean and the Baltic Sea (McDougall et al., 2009; IOC et
al., 2010; Feistel et al., 2010b). A routine for conversions
between Practical Salinity and Absolute Salinity is included
in the SIA library at level 0 (functions asal_f rom_psal
and psal_from_asal) using an algorithm adapted from
the GSW library (McDougall et al., 2009). A function
that permits the computation of Density Salinity as an es
timate of Absolute Salinity from measured in situ density,
e.g., in the laboratory, is also available in the SIA library
(function sea_sa_si). Further details are available from
the companion paper, Part 2 (Wright et al., 2010a). De
tails on the use and the uncertainties of the different salin
ity scales are described by Wright et al. (2010b). Con
version routines between different pressure units (function
cnv.pressure), temperature scales and units (function
cnv_temperature), as well as between various salinity
measures (function cnv_salinity) are available at level 5
of the library for convenience.
In order to shorten the main article for technical reasons,
29 tables with groups of thermodynamic properties and their
equations were moved to the Digital Supplement of this pa
per. They are referred to here as Table S1 to S29; their equa
tions are numbered as Sl.l etc. Because of their key role
in the SIA library, the various potential functions themselves
are summarised in Table 1 rather than in the supplement.
The information provided in this paper is a reference for
mathematical and thermodynamic details of the algorithms
implemented in the SIA library. It is intended to ease the
readability of the open source code and its numerous com
ment lines, and to encourage users to add new required
properties, correlations or applications to the levels 2-5,
guided by the examples and equations expained here. For
high-speed requirements, tailored look-up tables for arbitrary
property combinations can easily be compiled from the SIA
code which is rather comprehensive but not speed-optimized.
While this paper was under review, the authors of the
dry-air formulation (Lemmon et al., 2000) used in the SIA