Go to the documentation of this file.
17 use gsw_mod_toolbox,
only : gsw_rho_first_derivatives
19 implicit none ;
private
38 real,
parameter ::
pa2db = 1.e-4
41 real,
parameter ::
r1_s0 = 0.875/35.16504
42 real,
parameter ::
r1_t0 = 1./40.
43 real,
parameter ::
r1_p0 = 1.e-4
44 real,
parameter ::
r00 = 4.6494977072e+01
45 real,
parameter ::
r01 = -5.2099962525
46 real,
parameter ::
r02 = 2.2601900708e-01
47 real,
parameter ::
r03 = 6.4326772569e-02
48 real,
parameter ::
r04 = 1.5616995503e-02
49 real,
parameter ::
r05 = -1.7243708991e-03
50 real,
parameter ::
eos000 = 8.0189615746e+02
51 real,
parameter ::
eos100 = 8.6672408165e+02
52 real,
parameter ::
eos200 = -1.7864682637e+03
53 real,
parameter ::
eos300 = 2.0375295546e+03
54 real,
parameter ::
eos400 = -1.2849161071e+03
55 real,
parameter ::
eos500 = 4.3227585684e+02
56 real,
parameter ::
eos600 = -6.0579916612e+01
57 real,
parameter ::
eos010 = 2.6010145068e+01
58 real,
parameter ::
eos110 = -6.5281885265e+01
59 real,
parameter ::
eos210 = 8.1770425108e+01
60 real,
parameter ::
eos310 = -5.6888046321e+01
61 real,
parameter ::
eos410 = 1.7681814114e+01
62 real,
parameter ::
eos510 = -1.9193502195
63 real,
parameter ::
eos020 = -3.7074170417e+01
64 real,
parameter ::
eos120 = 6.1548258127e+01
65 real,
parameter ::
eos220 = -6.0362551501e+01
66 real,
parameter ::
eos320 = 2.9130021253e+01
67 real,
parameter ::
eos420 = -5.4723692739
68 real,
parameter ::
eos030 = 2.1661789529e+01
69 real,
parameter ::
eos130 = -3.3449108469e+01
70 real,
parameter ::
eos230 = 1.9717078466e+01
71 real,
parameter ::
eos330 = -3.1742946532
72 real,
parameter ::
eos040 = -8.3627885467
73 real,
parameter ::
eos140 = 1.1311538584e+01
74 real,
parameter ::
eos240 = -5.3563304045
75 real,
parameter ::
eos050 = 5.4048723791e-01
76 real,
parameter ::
eos150 = 4.8169980163e-01
77 real,
parameter ::
eos060 = -1.9083568888e-01
78 real,
parameter ::
eos001 = 1.9681925209e+01
79 real,
parameter ::
eos101 = -4.2549998214e+01
80 real,
parameter ::
eos201 = 5.0774768218e+01
81 real,
parameter ::
eos301 = -3.0938076334e+01
82 real,
parameter ::
eos401 = 6.6051753097
83 real,
parameter ::
eos011 = -1.3336301113e+01
84 real,
parameter ::
eos111 = -4.4870114575
85 real,
parameter ::
eos211 = 5.0042598061
86 real,
parameter ::
eos311 = -6.5399043664e-01
87 real,
parameter ::
eos021 = 6.7080479603
88 real,
parameter ::
eos121 = 3.5063081279
89 real,
parameter ::
eos221 = -1.8795372996
90 real,
parameter ::
eos031 = -2.4649669534
91 real,
parameter ::
eos131 = -5.5077101279e-01
92 real,
parameter ::
eos041 = 5.5927935970e-01
93 real,
parameter ::
eos002 = 2.0660924175
94 real,
parameter ::
eos102 = -4.9527603989
95 real,
parameter ::
eos202 = 2.5019633244
96 real,
parameter ::
eos012 = 2.0564311499
97 real,
parameter ::
eos112 = -2.1311365518e-01
98 real,
parameter ::
eos022 = -1.2419983026
99 real,
parameter ::
eos003 = -2.3342758797e-02
100 real,
parameter ::
eos103 = -1.8507636718e-02
101 real,
parameter ::
eos013 = 3.7969820455e-01
102 real,
parameter ::
alp000 = -6.5025362670e-01
104 real,
parameter ::
alp200 = -2.0442606277
106 real,
parameter ::
alp400 = -4.4204535284e-01
107 real,
parameter ::
alp500 = 4.7983755487e-02
109 real,
parameter ::
alp110 = -3.0774129064
111 real,
parameter ::
alp310 = -1.4565010626
112 real,
parameter ::
alp410 = 2.7361846370e-01
113 real,
parameter ::
alp020 = -1.6246342147
115 real,
parameter ::
alp220 = -1.4787808849
116 real,
parameter ::
alp320 = 2.3807209899e-01
117 real,
parameter ::
alp030 = 8.3627885467e-01
118 real,
parameter ::
alp130 = -1.1311538584
119 real,
parameter ::
alp230 = 5.3563304045e-01
120 real,
parameter ::
alp040 = -6.7560904739e-02
121 real,
parameter ::
alp140 = -6.0212475204e-02
122 real,
parameter ::
alp050 = 2.8625353333e-02
123 real,
parameter ::
alp001 = 3.3340752782e-01
124 real,
parameter ::
alp101 = 1.1217528644e-01
125 real,
parameter ::
alp201 = -1.2510649515e-01
126 real,
parameter ::
alp301 = 1.6349760916e-02
127 real,
parameter ::
alp011 = -3.3540239802e-01
128 real,
parameter ::
alp111 = -1.7531540640e-01
129 real,
parameter ::
alp211 = 9.3976864981e-02
130 real,
parameter ::
alp021 = 1.8487252150e-01
131 real,
parameter ::
alp121 = 4.1307825959e-02
132 real,
parameter ::
alp031 = -5.5927935970e-02
133 real,
parameter ::
alp002 = -5.1410778748e-02
134 real,
parameter ::
alp102 = 5.3278413794e-03
135 real,
parameter ::
alp012 = 6.2099915132e-02
136 real,
parameter ::
alp003 = -9.4924551138e-03
137 real,
parameter ::
bet000 = 1.0783203594e+01
138 real,
parameter ::
bet100 = -4.4452095908e+01
139 real,
parameter ::
bet200 = 7.6048755820e+01
140 real,
parameter ::
bet300 = -6.3944280668e+01
141 real,
parameter ::
bet400 = 2.6890441098e+01
142 real,
parameter ::
bet500 = -4.5221697773
143 real,
parameter ::
bet010 = -8.1219372432e-01
145 real,
parameter ::
bet210 = -2.1232895170
146 real,
parameter ::
bet310 = 8.7994140485e-01
147 real,
parameter ::
bet410 = -1.1939638360e-01
148 real,
parameter ::
bet020 = 7.6574242289e-01
149 real,
parameter ::
bet120 = -1.5019813020
151 real,
parameter ::
bet320 = -2.7233429080e-01
152 real,
parameter ::
bet030 = -4.1615152308e-01
153 real,
parameter ::
bet130 = 4.9061350869e-01
154 real,
parameter ::
bet230 = -1.1847737788e-01
155 real,
parameter ::
bet040 = 1.4073062708e-01
156 real,
parameter ::
bet140 = -1.3327978879e-01
157 real,
parameter ::
bet050 = 5.9929880134e-03
158 real,
parameter ::
bet001 = -5.2937873009e-01
160 real,
parameter ::
bet201 = -1.1547328025
161 real,
parameter ::
bet301 = 3.2870876279e-01
162 real,
parameter ::
bet011 = -5.5824407214e-02
163 real,
parameter ::
bet111 = 1.2451933313e-01
164 real,
parameter ::
bet211 = -2.4409539932e-02
165 real,
parameter ::
bet021 = 4.3623149752e-02
166 real,
parameter ::
bet121 = -4.6767901790e-02
167 real,
parameter ::
bet031 = -6.8523260060e-03
168 real,
parameter ::
bet002 = -6.1618945251e-02
169 real,
parameter ::
bet102 = 6.2255521644e-02
170 real,
parameter ::
bet012 = -2.6514181169e-03
171 real,
parameter ::
bet003 = -2.3025968587e-04
181 real,
intent(in) :: t
182 real,
intent(in) :: s
183 real,
intent(in) :: pressure
184 real,
intent(out) :: rho
185 real,
optional,
intent(in) :: rho_ref
187 real :: al0, p0, lambda
189 real,
dimension(1) :: t0, s0, pressure0
190 real,
dimension(1) :: rho0
194 pressure0(1) = pressure
206 real,
dimension(:),
intent(in) :: t
207 real,
dimension(:),
intent(in) :: s
208 real,
dimension(:),
intent(in) :: pressure
209 real,
dimension(:),
intent(out) :: rho
210 integer,
intent(in) :: start
211 integer,
intent(in) :: npts
212 real,
optional,
intent(in) :: rho_ref
215 real :: zp, zt, zh, zs, zr0, zn, zn0, zn1, zn2, zn3, zs0
218 do j=start,start+npts-1
222 zp = pressure(j)*
pa2db
254 if (
present(rho_ref))
then
255 zn = ( ( zn3 * zp + zn2 ) * zp + zn1 ) * zp + (zn0 + (zs0 - rho_ref))
256 rho(j) = ( zn + zr0 )
258 zn = ( ( zn3 * zp + zn2 ) * zp + zn1 ) * zp + (zn0 + zs0)
259 rho(j) = ( zn + zr0 )
268 real,
intent(in),
dimension(:) :: T
269 real,
intent(in),
dimension(:) :: S
270 real,
intent(in),
dimension(:) :: pressure
271 real,
intent(out),
dimension(:) :: drho_dT
273 real,
intent(out),
dimension(:) :: drho_dS
275 integer,
intent(in) :: start
276 integer,
intent(in) :: npts
279 real :: zp,zt , zh , zs , zr0, zn , zn0, zn1, zn2, zn3
282 do j=start,start+npts-1
286 zp = pressure(j)*
pa2db
311 zn = ( ( zn3 * zp + zn2 ) * zp + zn1 ) * zp + zn0
333 zn = ( ( zn3 * zp + zn2 ) * zp + zn1 ) * zp + zn0
342 real,
intent(in) :: T
343 real,
intent(in) :: S
344 real,
intent(in) :: pressure
345 real,
intent(out) :: drho_dT
347 real,
intent(out) :: drho_dS
350 real :: al0, p0, lambda
352 real,
dimension(1) :: T0, S0, pressure0
353 real,
dimension(1) :: drdt0, drds0
357 pressure0(1) = pressure
369 real,
intent(in),
dimension(:) :: t
370 real,
intent(in),
dimension(:) :: s
371 real,
intent(in),
dimension(:) :: pressure
372 real,
intent(out),
dimension(:) :: rho
373 real,
intent(out),
dimension(:) :: drho_dp
376 integer,
intent(in) :: start
377 integer,
intent(in) :: npts
388 do j=start,start+npts-1
392 zp = pressure(j)*
pa2db
393 call gsw_rho_first_derivatives(zs,zt,zp, drho_dp=drho_dp(j))
real, parameter eos600
Parameters in the NEMO equation of state.
real, parameter eos020
Parameters in the NEMO equation of state.
real, parameter eos420
Parameters in the NEMO equation of state.
real, parameter eos101
Parameters in the NEMO equation of state.
real, parameter alp021
Parameters in the NEMO equation of state.
real, parameter eos031
Parameters in the NEMO equation of state.
real, parameter r05
Parameters in the NEMO equation of state.
real, parameter alp003
Parameters in the NEMO equation of state.
real, parameter eos003
Parameters in the NEMO equation of state.
real, parameter r1_s0
Parameters in the NEMO equation of state.
real, parameter bet031
Parameters in the NEMO equation of state.
real, parameter eos320
Parameters in the NEMO equation of state.
real, parameter eos021
Parameters in the NEMO equation of state.
real, parameter alp210
Parameters in the NEMO equation of state.
real, parameter alp031
Parameters in the NEMO equation of state.
real, parameter eos111
Parameters in the NEMO equation of state.
real, parameter bet102
Parameters in the NEMO equation of state.
real, parameter eos200
Parameters in the NEMO equation of state.
real, parameter bet210
Parameters in the NEMO equation of state.
real, parameter bet300
Parameters in the NEMO equation of state.
real, parameter eos211
Parameters in the NEMO equation of state.
real, parameter eos410
Parameters in the NEMO equation of state.
real, parameter eos131
Parameters in the NEMO equation of state.
real, parameter r1_p0
Parameters in the NEMO equation of state.
real, parameter bet230
Parameters in the NEMO equation of state.
real, parameter bet121
Parameters in the NEMO equation of state.
real, parameter r02
Parameters in the NEMO equation of state.
real, parameter alp500
Parameters in the NEMO equation of state.
real, parameter bet320
Parameters in the NEMO equation of state.
real, parameter alp020
Parameters in the NEMO equation of state.
real, parameter r03
Parameters in the NEMO equation of state.
real, parameter alp002
Parameters in the NEMO equation of state.
real, parameter bet201
Parameters in the NEMO equation of state.
real, parameter bet020
Parameters in the NEMO equation of state.
real, parameter bet050
Parameters in the NEMO equation of state.
real, parameter alp130
Parameters in the NEMO equation of state.
real, parameter bet012
Parameters in the NEMO equation of state.
real, parameter alp121
Parameters in the NEMO equation of state.
real, parameter alp030
Parameters in the NEMO equation of state.
real, parameter bet130
Parameters in the NEMO equation of state.
real, parameter eos012
Parameters in the NEMO equation of state.
real, parameter bet000
Parameters in the NEMO equation of state.
real, parameter bet220
Parameters in the NEMO equation of state.
real, parameter eos022
Parameters in the NEMO equation of state.
real, parameter alp410
Parameters in the NEMO equation of state.
real, parameter alp140
Parameters in the NEMO equation of state.
real, parameter alp300
Parameters in the NEMO equation of state.
real, parameter bet040
Parameters in the NEMO equation of state.
real, parameter alp040
Parameters in the NEMO equation of state.
subroutine, public calculate_density_scalar_nemo(T, S, pressure, rho, rho_ref)
This subroutine computes the in situ density of sea water (rho in [kg m-3]) from absolute salinity (S...
real, parameter eos240
Parameters in the NEMO equation of state.
real, parameter r04
Parameters in the NEMO equation of state.
real, parameter eos201
Parameters in the NEMO equation of state.
real, parameter r01
Parameters in the NEMO equation of state.
real, parameter alp220
Parameters in the NEMO equation of state.
real, parameter eos311
Parameters in the NEMO equation of state.
real, parameter bet410
Parameters in the NEMO equation of state.
real, parameter alp310
Parameters in the NEMO equation of state.
real, parameter alp201
Parameters in the NEMO equation of state.
real, parameter eos103
Parameters in the NEMO equation of state.
real, parameter bet200
Parameters in the NEMO equation of state.
real, parameter eos310
Parameters in the NEMO equation of state.
real, parameter eos400
Parameters in the NEMO equation of state.
real, parameter eos221
Parameters in the NEMO equation of state.
real, parameter bet500
Parameters in the NEMO equation of state.
real, parameter bet140
Parameters in the NEMO equation of state.
real, parameter eos140
Parameters in the NEMO equation of state.
real, parameter alp230
Parameters in the NEMO equation of state.
real, parameter eos330
Parameters in the NEMO equation of state.
real, parameter eos013
Parameters in the NEMO equation of state.
subroutine calculate_density_derivs_scalar_nemo(T, S, pressure, drho_dt, drho_ds)
Wrapper to calculate_density_derivs_array for scalar inputs.
The equation of state using the expressions of Roquet et al. that are used in NEMO.
real, parameter alp200
Parameters in the NEMO equation of state.
subroutine calculate_density_derivs_array_nemo(T, S, pressure, drho_dT, drho_dS, start, npts)
For a given thermodynamic state, calculate the derivatives of density with conservative temperature a...
For a given thermodynamic state, return the derivatives of density with conservative temperature and ...
Compute the in situ density of sea water ([kg m-3]), or its anomaly with respect to a reference densi...
real, parameter eos050
Parameters in the NEMO equation of state.
real, parameter eos110
Parameters in the NEMO equation of state.
subroutine, public calculate_density_array_nemo(T, S, pressure, rho, start, npts, rho_ref)
This subroutine computes the in situ density of sea water (rho in [kg m-3]) from absolute salinity (S...
real, parameter eos002
Parameters in the NEMO equation of state.
real, parameter alp050
Parameters in the NEMO equation of state.
real, parameter eos120
Parameters in the NEMO equation of state.
real, parameter eos150
Parameters in the NEMO equation of state.
real, parameter bet002
Parameters in the NEMO equation of state.
real, parameter eos230
Parameters in the NEMO equation of state.
real, parameter bet101
Parameters in the NEMO equation of state.
real, parameter bet310
Parameters in the NEMO equation of state.
real, parameter bet301
Parameters in the NEMO equation of state.
real, parameter eos130
Parameters in the NEMO equation of state.
real, parameter eos010
Parameters in the NEMO equation of state.
real, parameter alp001
Parameters in the NEMO equation of state.
real, parameter eos001
Parameters in the NEMO equation of state.
real, parameter eos041
Parameters in the NEMO equation of state.
real, parameter eos300
Parameters in the NEMO equation of state.
real, parameter alp211
Parameters in the NEMO equation of state.
real, parameter bet211
Parameters in the NEMO equation of state.
real, parameter alp301
Parameters in the NEMO equation of state.
real, parameter eos030
Parameters in the NEMO equation of state.
real, parameter eos011
Parameters in the NEMO equation of state.
real, parameter bet010
Parameters in the NEMO equation of state.
real, parameter alp101
Parameters in the NEMO equation of state.
real, parameter alp102
Parameters in the NEMO equation of state.
real, parameter eos040
Parameters in the NEMO equation of state.
real, parameter eos102
Parameters in the NEMO equation of state.
real, parameter eos202
Parameters in the NEMO equation of state.
real, parameter alp110
Parameters in the NEMO equation of state.
real, parameter bet003
Parameters in the NEMO equation of state.
real, parameter eos301
Parameters in the NEMO equation of state.
real, parameter bet030
Parameters in the NEMO equation of state.
real, parameter eos220
Parameters in the NEMO equation of state.
real, parameter bet120
Parameters in the NEMO equation of state.
real, parameter eos121
Parameters in the NEMO equation of state.
subroutine, public calculate_compress_nemo(T, S, pressure, rho, drho_dp, start, npts)
Compute the in situ density of sea water (rho in [kg m-3]) and the compressibility (drho/dp = C_sound...
real, parameter alp011
Parameters in the NEMO equation of state.
real, parameter alp000
Parameters in the NEMO equation of state.
real, parameter eos210
Parameters in the NEMO equation of state.
real, parameter bet100
Parameters in the NEMO equation of state.
real, parameter alp320
Parameters in the NEMO equation of state.
real, parameter r1_t0
Parameters in the NEMO equation of state.
real, parameter r00
Parameters in the NEMO equation of state.
real, parameter eos510
Parameters in the NEMO equation of state.
real, parameter bet011
Parameters in the NEMO equation of state.
real, parameter alp012
Parameters in the NEMO equation of state.
real, parameter eos112
Parameters in the NEMO equation of state.
real, parameter pa2db
Conversion factor between Pa and dbar.
real, parameter alp120
Parameters in the NEMO equation of state.
real, parameter bet110
Parameters in the NEMO equation of state.
real, parameter bet001
Parameters in the NEMO equation of state.
real, parameter alp010
Parameters in the NEMO equation of state.
real, parameter eos401
Parameters in the NEMO equation of state.
real, parameter bet021
Parameters in the NEMO equation of state.
real, parameter alp100
Parameters in the NEMO equation of state.
real, parameter eos000
Parameters in the NEMO equation of state.
real, parameter bet111
Parameters in the NEMO equation of state.
real, parameter alp400
Parameters in the NEMO equation of state.
real, parameter alp111
Parameters in the NEMO equation of state.
real, parameter eos500
Parameters in the NEMO equation of state.
real, parameter eos100
Parameters in the NEMO equation of state.
real, parameter eos060
Parameters in the NEMO equation of state.
real, parameter bet400
Parameters in the NEMO equation of state.
real, parameter rdeltas
Parameters in the NEMO equation of state.