Introduction
Recently, oce has been gaining flexibility in terms of conductivities stored in data files. This is necessitated by the fact that RBR files store conductivity in mS/cm, whereas calculations for seawater properties use the unitless conductivity ratio. With the CTD code under examination for this work, it might make sense to also handle temperatures stored in files. The two choices for that seem to be the IPTS68 and ITS90 conventions [1,2], and a natural question is whether using ITS90 temperatures in formula designed for IPTS68 will yield errors of practical significance.
Functions
The following are functions for the conversion, as suggested in [1].
1
2
T90toT68 < function(T90) 1.00024 * T90
T68toT90 < function(T68) T68 / 1.00024
Test of inferred density
First, define some base quantities
1
2
3
4
library(oce)
S < 35
T90 < 20
p < 100
and then do some calculations, e.g.
1
T90toT68(T90)
This temperature difference, 0.0048, is several times larger than the SBE911plus initial accuracy of 0.001 C as stated at [3]. (It is about double the stated stability over a year of drift.)
Another test is of density:
1
swRho(S, T90, p) # incorrect
1
swRho(S, T90toT68(T90), p)
Finally, the following tests the amount that salinity would need to be adjusted to compensate (in density terms) for a temperature misapplication.
1
2
rho0 < swRho(S, T90toT68(T90), p)
uniroot(function(S) swRho(S, T90, p)  rho0, lower=34, upper=36)$root
In a practical application, one might compare this salinity difference, 0.0016675, with expected inaccuracies in measurement, or perhaps with the intersample “noise”.
References and resources

Seabird Electronics application note on temperature conversion

Saunders 1990 article on IPTS68 to ITS90 conversion, in WOCE newsletter Sept 1990 number 10, page 10.

Jekyll source code for this blog entry: 20150510ITS90temperaturescale.Rmd