New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 617 for trunk/NEMO/TOP_SRC/SMS/p4zche.F – NEMO

Ignore:
Timestamp:
2007-02-21T14:03:10+01:00 (17 years ago)
Author:
opalod
Message:

* empty log message *

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/TOP_SRC/SMS/p4zche.F

    r341 r617  
    1414CCC     PURPOSE. 
    1515CCC     -------- 
    16 CCC          *P4ZCHE* SETS CHEMICAL CONSTANTS  
     16CCC          *P4ZCHE* : Sea water chemistry computed following OCMIP protocol 
    1717CCC 
    1818CCC 
     
    2727CC      modifications : 1999 C. Le Quere 
    2828CC      modifications : 2004 O. Aumont 
     29CC      modifications : 2006 R. Gangsto 
    2930CC---------------------------------------------------------------------- 
    3031CC parameters and commons 
     
    4546      REAL pres, tc, cl, cpexp, cek0, oxy, cpexp2 
    4647      REAL zsqrt, ztr, zlogt, cek1 
    47       REAL zqtt, qtt2, sal15, zis, zis2 
     48      REAL zqtt, qtt2, sal15, zis, zis2, zisqrt 
    4849      REAL ckb, ck1, ck2, ckw, ak1, ak2, akb, aksp0, akw 
     50      REAL ckp1, ckp2, ckp3, cksi, akp1, akp2, akp3, aksi 
     51      REAL st, ft, cks, ckf, aks, akf, aksp1 
     52 
    4953C 
    5054C* 1. CHEMICAL CONSTANTS - SURFACE LAYER 
     
    110114            zis    = 19.924*sal/(1000.-1.005*sal) 
    111115            zis2   = zis*zis 
     116            zisqrt = sqrt(zis) 
    112117            tc = tn(ji,jj,jk) + (1.-tmask(ji,jj,jk))*20. 
    113118C 
     
    116121C 
    117122            cl = sal*salchl 
     123C 
     124C* 2.4 TOTAL SULFATE CONCENTR. [MOLES/kg soln] 
     125C -------------------------------------------- 
     126C 
     127            st = st1*cl*st2 
     128C 
     129C* 2.5 TOTAL FLUORIDE CONCENTR. [MOLES/kg soln] 
     130C --------------------------------------------- 
     131C 
     132            ft = ft1*cl*ft2 
     133C 
     134C* 2.6 DISSOCIATION CONSTANT FOR SULFATES 
     135C on free H scale (Dickson 1990) 
     136C ------------------------------------------------------- 
     137C 
     138            cks=exp(ks1*ztr+ks0+ks2*zlogt+(ks3*ztr+ks4+ks5*zlogt) 
     139     &      *zisqrt+(ks6*ztr+ks7+ks8*zlogt)*zis+ks9*ztr*zis 
     140     &      *zisqrt+ks10*ztr*zis2+log(ks11+ks12*sal)) 
     141C 
     142C* 2.7 DISSOCIATION CONSTANT FOR FLUORIDES 
     143C on free H scale (Dickson and Riley 79) 
     144C ------------------------------------------------------- 
     145C 
     146            ckf=exp(kf1*ztr+kf0+kf2*zisqrt+log(kf3+kf4*sal)) 
     147 
    118148C 
    119149C* 2.4 DISSOCIATION CONSTANT FOR CARBONATE AND BORATE 
     
    123153     &          +(cb5+cb6*zsqrt+cb7*sal)+ 
    124154     &          (cb8+cb9*zsqrt+cb10*sal)*zlogt+cb11*zsqrt*tkel 
     155     &          +log((1.+st/cks+ft/ckf)/(1.+st/cks)) 
    125156            ck1 = c10*ztr+c11+c12*zlogt+c13*sal+c14*sal**2 
    126157            ck2 = c20*ztr+c21+c22*sal+c23*sal**2 
     
    131162            ckw = cw0*ztr+cw1+cw2*zlogt+(cw3*ztr+cw4+cw5*zlogt)* 
    132163     &          zsqrt+cw6*sal 
     164 
     165C 
     166C 
     167C* 2.10 DISSOCIATION CONSTANT FOR PHOSPHATE AND SILICATE (seawater scale) 
     168C  --------------------------------------------------------------------- 
     169C 
     170            ckp1 = cp10+cp11*ztr+cp12*zlogt+zsqrt*(cp13*ztr 
     171     &           +cp14)+sal*(cp15*ztr+cp16) 
     172            ckp2 = cp20+cp21*ztr+cp22*zlogt+zsqrt*(cp23*ztr 
     173     &           +cp24)+sal*(cp25*ztr+cp26) 
     174            ckp3 = cp30+cp31*ztr+zsqrt*(cp32*ztr 
     175     &           +cp33)+sal*(cp34*ztr+cp35) 
     176            cksi = cs10+cs11*ztr+cs12*zlogt+zisqrt*(cs13*ztr 
     177     &           +cs14)+zis*(cs15*ztr+cs16)+zis2*(cs17*ztr 
     178     &           +cs18)+log(1.+cs19*sal) 
     179     &           +log(cs20+cs21*sal) 
     180 
    133181C 
    134182C* 2.6 K1, K2 OF CARBONIC ACID, KB OF BORIC ACID, KW (H2O) (LIT.?) 
    135183C ----------------------------------------------------------------- 
    136184C 
    137             ak1 = 10**(ck1) 
    138             ak2 = 10**(ck2) 
    139             akb = exp(ckb) 
    140             akw = exp(ckw) 
     185            ak1   = 10**(ck1) 
     186            ak2   = 10**(ck2) 
     187            akb   = exp(ckb) 
     188            akp1  = exp(ckp1) 
     189            akp2  = exp(ckp2) 
     190            akp3  = exp(ckp3) 
     191            aksi  = exp(cksi) 
     192            akw   = exp(ckw) 
     193            aksp1 = 10**(aksp0) 
     194            aks   = exp(cks) 
     195            akf   = exp(ckf) 
     196 
     197 
    141198C 
    142199C*2.7 APPARENT SOLUBILITY PRODUCT K'SP OF CALCITE IN SEAWATER 
    143200C       (S=27-43, T=2-25 DEG C) AT pres =0 (ATMOSPH. PRESSURE) 
    144 C       (INGLE, 1800, EQ. 6) 
     201C       (MUCCI 1983) 
    145202C ------------------------------------------------------------- 
    146203C 
    147             aksp0 = 1.E-7*(akcc1+akcc2*sal**(1./3.)+akcc3*log10(sal) 
    148      &          +akcc4*tkel*tkel) 
     204            aksp0 = akcc1+akcc2*tkel+akcc3*ztr+akcc4*log10(tkel)+ 
     205     &      (akcc5+akcc6*tkel+ 
     206     &      akcc7*ztr)*zsqrt+akcc8*sal+akcc9*sal15 
     207 
    149208C 
    150209C* 2.8 FORMULA FOR CPEXP AFTER EDMOND AND GIESKES (1970) 
     
    183242            zbuf1 = -(devk1(4)+devk2(4)*tc+devk3(4)*tc*tc) 
    184243            zbuf2 = 0.5*(devk4(4)+devk5(4)*tc) 
     244            akp13(ji,jj,jk) = akp1*exp(zbuf1*cpexp+zbuf2*cpexp2) 
     245 
     246            zbuf1 = -(devk1(5)+devk2(5)*tc+devk3(5)*tc*tc) 
     247            zbuf2 = 0.5*(devk4(5)+devk5(5)*tc) 
     248            akp23(ji,jj,jk) = akp2*exp(zbuf1*cpexp+zbuf2*cpexp2) 
     249 
     250            zbuf1 = -(devk1(6)+devk2(6)*tc+devk3(6)*tc*tc) 
     251            zbuf2 = 0.5*(devk4(6)+devk5(6)*tc) 
     252            akp33(ji,jj,jk) = akp3*exp(zbuf1*cpexp+zbuf2*cpexp2) 
     253 
     254            zbuf1 = -(devk1(7)+devk2(7)*tc+devk3(7)*tc*tc) 
     255            zbuf2 = 0.5*(devk4(7)+devk5(7)*tc) 
    185256            akw3(ji,jj,jk) = akw*exp(zbuf1*cpexp+zbuf2*cpexp2) 
    186 C 
    187 C  2.10 APPARENT SOLUBILITY PRODUCT K'SP OF CALCITE (OR ARAGONITE) 
    188 C        AS FUNCTION OF PRESSURE FOLLWING EDMOND AND GIESKES (1970) 
     257 
     258C  Ksi 
     259C            aksi3(ji,jj,jk) = aksi 
     260C 
     261C  Or using coefficient of borates (cf millero 95+ corrected version html doc co2sys) 
     262C  "deltaVsi and deltaKsi have been estimated from the value of boric acid" 
     263C 
     264            zbuf1 = -(devk1(3)+devk2(3)*tc+devk3(3)*tc*tc) 
     265            zbuf2 = 0.5*(devk4(3)+devk5(3)*tc) 
     266            aksi3(ji,jj,jk) = aksi*exp(zbuf1*cpexp+zbuf2*cpexp2) 
     267 
     268C 
     269C 
     270C* 2.15 APPARENT SOLUBILITY PRODUCT K'SP OF CALCITE  
     271C        AS FUNCTION OF PRESSURE FOLLOWING MILLERO 
    189272C        (P. 1285) AND BERNER (1976) 
    190 C ----------------------------------------------------------------- 
    191 C 
    192             aksp(ji,jj,jk) = aksp0*exp(cpexp*(devks-devkst*tc)) 
     273C ------------------------------------------------- 
     274 
     275            zbuf1 = -(devk1(8)+devk2(8)*tc+devk3(8)*tc*tc) 
     276            zbuf2 = 0.5*(devk4(8)+devk5(8)*tc) 
     277            aksp(ji,jj,jk) = aksp1*exp(zbuf1*cpexp+zbuf2*cpexp2) 
     278 
     279C  Pressure correction for sulfate and fluoride 
     280C 
     281            zbuf1 = -(devk1(9)+devk2(9)*tc+devk3(9)*tc*tc) 
     282            zbuf2 = 0.5*(devk4(9)+devk5(9)*tc) 
     283            aks3(ji,jj,jk) = aks*exp(zbuf1*cpexp+zbuf2*cpexp2) 
     284 
     285            zbuf1 = -(devk1(10)+devk2(10)*tc+devk3(10)*tc*tc) 
     286            zbuf2 = 0.5*(devk4(10)+devk5(10)*tc) 
     287            akf3(ji,jj,jk) = akf*exp(zbuf1*cpexp+zbuf2*cpexp2) 
     288 
     289 
    193290C 
    194291C* 2.11 TOTAL BORATE CONCENTR. [MOLES/L] 
Note: See TracChangeset for help on using the changeset viewer.