@@ -402,14 +402,24 @@ def PolyTEOS10_bsq(particle, fieldset, time):
402402 Oceanic Technology, 20, 730-741.
403403
404404 """
405- Z = - particle .depth # note: use negative depths!
405+ Z = - math . fabs ( particle .depth ) # note: use negative depths!
406406 SA = fieldset .absolute_salinity [time , particle .depth , particle .lat , particle .lon ]
407407 CT = fieldset .conservative_temperature [time , particle .depth , particle .lat , particle .lon ]
408408
409409 SAu = 40. * 35.16504 / 35.
410410 CTu = 40.
411411 Zu = 1.0e+04
412412 deltaS = 32.
413+
414+ zz = - Z / Zu
415+ R00 = 4.6494977072e+01
416+ R01 = - 5.2099962525e+00
417+ R02 = 2.2601900708e-01
418+ R03 = 6.4326772569e-02
419+ R04 = 1.5616995503e-02
420+ R05 = - 1.7243708991e-03
421+ r0 = (((((R05 * zz + R04 ) * zz + R03 ) * zz + R02 ) * zz + R01 ) * zz + R00 ) * zz
422+
413423 R000 = 8.0189615746e+02
414424 R100 = 8.6672408165e+02
415425 R200 = - 1.7864682637e+03
@@ -469,8 +479,9 @@ def PolyTEOS10_bsq(particle, fieldset, time):
469479 rz2 = (R022 * tt + R112 * ss + R012 ) * tt + (R202 * ss + R102 ) * ss + R002
470480 rz1 = (((R041 * tt + R131 * ss + R031 ) * tt + (R221 * ss + R121 ) * ss + R021 ) * tt + ((R311 * ss + R211 ) * ss + R111 ) * ss + R011 ) * tt + (((R401 * ss + R301 ) * ss + R201 ) * ss + R101 ) * ss + R001
471481 rz0 = (((((R060 * tt + R150 * ss + R050 ) * tt + (R240 * ss + R140 ) * ss + R040 ) * tt + ((R330 * ss + R230 ) * ss + R130 ) * ss + R030 ) * tt + (((R420 * ss + R320 ) * ss + R220 ) * ss + R120 ) * ss + R020 ) * tt + ((((R510 * ss + R410 ) * ss + R310 ) * ss + R210 ) * ss + R110 ) * ss + R010 ) * tt + (((((R600 * ss + R500 ) * ss + R400 ) * ss + R300 ) * ss + R200 ) * ss + R100 ) * ss + R000
472- particle .seawater_density = ((rz3 * zz + rz2 ) * zz + rz1 ) * zz + rz0
473- # particle.sw_surface_density = rz0
482+ r = ((rz3 * zz + rz2 ) * zz + rz1 ) * zz + rz0
483+
484+ particle .seawater_density = r0 + r
474485
475486
476487def VerticalMixing (particle , fieldset , time ):
0 commit comments