*IF DEF,OCEAN @DYALLOC.4442 C ******************************COPYRIGHT****************************** GTS2F400.3061 C (c) CROWN COPYRIGHT 1995, METEOROLOGICAL OFFICE, All Rights Reserved. GTS2F400.3062 C GTS2F400.3063 C Use, duplication or disclosure of this code is subject to the GTS2F400.3064 C restrictions as set forth in the contract. GTS2F400.3065 C GTS2F400.3066 C Meteorological Office GTS2F400.3067 C London Road GTS2F400.3068 C BRACKNELL GTS2F400.3069 C Berkshire UK GTS2F400.3070 C RG12 2SZ GTS2F400.3071 C GTS2F400.3072 C If no contract has been raised with this copy of the code, the use, GTS2F400.3073 C duplication or disclosure of it is strictly prohibited. Permission GTS2F400.3074 C to do so must first be obtained in writing from the Head of Numerical GTS2F400.3075 C Modelling at the above address. GTS2F400.3076 C ******************************COPYRIGHT****************************** GTS2F400.3077 C GTS2F400.3078 CLL======== FUNCTION fnptoz =================================== FNPTOZ.2 CLL CODED BY : OSCAR ALVES 22/2/93 FNPTOZ.3 CLL REVIEWED BY: FNPTOZ.4 CLL FNPTOZ.5 CLL FUNCTION TO TRANSFORM PRESSURE TO DEPTH USING THE METHOD OF FNPTOZ.6 CLL P M. SAUNDERS, 1981. J. PHYS. OCEANORG. 11, 573-574 FNPTOZ.7 CLL FNPTOZ.8 CLL INPUT; PIN = PRESSURE IN DECIBARS ("OCEANOGRAPHIC PRESSURE" EQUALS FNPTOZ.9 CLL ABSOLUTE PRESSURE MINUS ONE ATMOSPHERE) FNPTOZ.10 CLL FNPTOZ.11 CLL OUTPUT: fnptoz = DEPTH IN METRES FNPTOZ.12 CLL FNPTOZ.13 CLL CHECK VALUE; fnptoz = 9712.478325455 - CRAY 64 BIT FNPTOZ.14 CLL = 9712.4783254538 - IEEE 64 BIT FNPTOZ.15 CLL FOR: PIN=10000.0 XLAT=30.0 FNPTOZ.16 CLLEND FNPTOZ.17 C*+L FNPTOZ.18REAL FUNCTION fnptoz(PIN,XLAT) 1FNPTOZ.19 FNPTOZ.20 IMPLICIT NONE FNPTOZ.21 FNPTOZ.22 C-- DEFINE ARGUMENTS FNPTOZ.23 REAL FNPTOZ.24 & PIN ! PRESSURE IN DECIBARS FNPTOZ.25 & ,XLAT ! LATITUDE IN DEGREES FNPTOZ.26 FNPTOZ.27 C-- DEFINE LOCAL VARIABLES FNPTOZ.28 REAL FNPTOZ.29 & PI ! CONSTANT FNPTOZ.30 & ,RADIAN ! CONSTANT FNPTOZ.31 & ,G1 ! CONSTANT FNPTOZ.32 & ,G2 ! CONSTANT FNPTOZ.33 & ,G3 ! CONSTANT FNPTOZ.34 & ,S ! SALINITY REFERENCE FNPTOZ.35 & ,C1P5 ! CONSTANT FNPTOZ.36 & ,AL ! SPECIFIC VOLUME AT T=0.S=35,P=0 FNPTOZ.37 & ,RK ! CONSTANT FNPTOZ.38 & ,RA ! CONSTANT FNPTOZ.39 & ,RB ! CONSTANT FNPTOZ.40 & ,DD ! CONSTANT FNPTOZ.41 & ,C1 ! CONSTANT FNPTOZ.42 & ,C2 ! CONSTANT FNPTOZ.43 & ,C3 ! CONSTANT FNPTOZ.44 & ,C4 ! CONSTANT FNPTOZ.45 & ,C5 ! CONSTANT FNPTOZ.46 & ,C6 ! CONSTANT FNPTOZ.47 & ,C7 ! CONSTANT FNPTOZ.48 & ,X ! TEMPORARY VARIABLE FNPTOZ.49 & ,GS ! GRAVITY (LOCAL) FNPTOZ.50 & ,P ! PRESSURE IN BARS FNPTOZ.51 & ,R1 ! TEMPORARY VARIABLE FNPTOZ.52 FNPTOZ.53 FNPTOZ.54 FNPTOZ.55 C-- CALCULATE CONSTANTS FNPTOZ.56 FNPTOZ.57 parameter (pI=3.141592654E0) FNPTOZ.58 parameter (RADIAN=PI/180E0) FNPTOZ.59 parameter (G1 = 9.780318E0) FNPTOZ.60 parameter (G2 = 9.780318E0*(5.3024E-3-5.9E-6*4.0E0)) FNPTOZ.61 parameter (G3 =-9.780318E0*5.9E-6*4.0E0) FNPTOZ.62 FNPTOZ.63 C AL = SPECIFIC VOLUME AT (T=0,S=35,P=0) TIMES 10**5 FNPTOZ.64 C RK = CONSTANT COEFFICIENT FNPTOZ.65 C RA = TERM PROPORTIONAL TO P FNPTOZ.66 C RB = TERM PROPORTIONAL TO P**2 FNPTOZ.67 FNPTOZ.68 parameter (S= 35.0E0) FNPTOZ.69 parameter (C1P5=1.5E0) FNPTOZ.70 FNPTOZ.71 AL=1E5/(9.99842594E2+8.24493E-1*S FNPTOZ.72 & -5.72466E-3*S**C1P5 + 4.8314E-4*S**2) FNPTOZ.73 RK=1.965221E4 + 5.46746E1*S + 7.944E-2*S**C1P5 FNPTOZ.74 RA=3.239908E0 + 2.2838E-3*S + 1.91075E-4*S**C1P5 FNPTOZ.75 RB=8.50935E-5 - 9.9348E-7*S FNPTOZ.76 DD=SQRT(RA*RA-4.0E0*RK*RB) FNPTOZ.77 C1=0.5E0/RB FNPTOZ.78 C2=RA/RK FNPTOZ.79 C3=RB/RK FNPTOZ.80 C4=RA/(2.0E0*RB*DD) FNPTOZ.81 C5=2.0E0*RB/(RA-DD) FNPTOZ.82 C6=2.0E0*RB/(RA+DD) FNPTOZ.83 C7=0.5E0*2.226E-6 FNPTOZ.84 FNPTOZ.85 FNPTOZ.86 C-- CALCULATE GRAVITY FNPTOZ.87 FNPTOZ.88 X=SIN(RADIAN*XLAT)**2 FNPTOZ.89 GS=(G3*X+G2)*X+G1 FNPTOZ.90 FNPTOZ.91 C-- CONVERT FROM PRESSURE IN DECIBARS TO BARS FNPTOZ.92 P=PIN*1.0E-1 FNPTOZ.93 FNPTOZ.94 C-- INTEGRATE SPECIFIC VOLUME FNPTOZ.95 FNPTOZ.96 R1=AL*(P-C1*LOG((C3*P+C2)*P+1.0E0) + C4*LOG((1.0E0 + C5*P) FNPTOZ.97 & /(1.0E0+C6*P))) FNPTOZ.98 FNPTOZ.99 fnptoz = R1/(GS+C7*PIN) FNPTOZ.100 FNPTOZ.101 RETURN FNPTOZ.102 END FNPTOZ.103 *ENDIF @DYALLOC.4443