bug fix
SIA Library Module Sal_1: listed check values were incorrect
Problem:The check values listed in Sal_1 and the sal check table were incorrect, when the optional 2010 extention was included.
Bugfix:the check values have been updated.
bug fix
SIA Library Module Air_3c: Function air_a_eta_p_derivatives_si(1, 0, 1, a_si, t_si, p_si)
Problem:One of the derivaties was not calculated in the function air_h_si.
Error description:The missing assignment was:
g_tp = air_g_si(0, 1, 1, a_si, t_si, p_si)
this has been corrected and the checkvalue updated:
'air_h_si( 1, 0, 1, 0.9, 900, 1E5) = 4.89772680822127 'corrected value v 3.01.3, 06 May 2017
bug fix
SIA (Version 3.01.2) - FORTRANSIA Library Module Air_Sea_4
Problem:The vapour pressure of seawater is lower than that of pure water. If equilibria between seawater and humid air are investigated where the total pressure equals the vapour pressure of pure water, the iteration to calculate that equilibrium failed (Sea_Air_4, Public Function set_sea_air_eq_at_s_t_p and function calls depending thereon).
Error description:Sea_Air_4, Public Sub set_it_ctrl_sea_air(), a default initial value of zero is assigned for the iteration of the air fraction if the total pressure equals the pure-water saturation pressure.
Bugfix(es):In Sea_Air_4, Public Sub set_it_ctrl_sea_air(), any zero initial value of the dry-air fraction is replaced by a value of 1E-6.
bug fix
SIA Library Module Sea_3d
Problem:If salinity is calculated from density of freshwater by calling the Public Function sea_sa_si(), the iteration starting from default values may run in temporarily negative salinity and then stop with an error message. This can be avoided by setting a lower initial salinity by calling set_it_ctrl_salinity(). However, currently this call does not change the starting value of the iteration because of a code bug.
The bug is only in the VB version of SIA, not in the Fortran version.
Error description:
Calling set_it_ctrl_salinity() does not change the starting value of the salinity for subsequent iteration processes.
Bugfix(es):Sea_3d, Public Sub set_it_ctrl_salinity(ByVal key As String, ByVal value As Double)
Replace the VB code line:
Select Case CLng(value)
by,
Select Case value
bug fix
SIA Library Module Sea_Air_4
Problem:The vapour pressure of seawater is lower than that of pure water.
If equilibria between seawater and humid air are investigated where the total pressure is lower than the vapour pressure of pure water, the iteration to calculate that equilibrium failed (Sea_Air_4, Public Function set_sea_air_eq_at_s_t_p and function calls depending thereon).
Error description:Sea_Air_4, Private Function aux_airfraction_si() returned an ErrorReturn if the given pressure was below the pure-water vapour pressure at the given temperature
Sea_Air_4, Public Sub set_it_ctrl_sea_air() did not assign an initial value for the iteration of the air fraction if that initial value was chosen to be less than 0.5
Bugfix(es):Sea_Air_4, Private Function aux_airfraction_si() returns 1E-6 if the given pressure is below the pure-water vapour pressure at the given temperature
Sea_Air_4, Public Sub set_it_ctrl_sea_air() accepts any non-zero initial values for the iteration of the air fraction, the temperature and the pressure
the Absolute Salinity Anomaly takes into account evaporation and dilution