diff --git a/src/MNH/endstep.f90 b/src/MNH/endstep.f90 index c5086331e54fc8cd6db1beec392a800033f7c34d..fb0bd478bdabc82aefe0b8e7e7165a50758a34cb 100644 --- a/src/MNH/endstep.f90 +++ b/src/MNH/endstep.f90 @@ -210,6 +210,7 @@ USE MODD_NSV, ONLY : XSVMIN, NSV_CHEMBEG, NSV_CHEMEND, & USE MODD_CH_AEROSOL, ONLY : LORILAM USE MODD_DUST, ONLY : LDUST USE MODD_PARAM_C2R2, ONLY : LACTIT +USE MODD_PARAM_LIMA, ONLY : LACTIT_LIMA=>LACTIT USE MODD_LBC_n, ONLY : CLBCX, CLBCY USE MODD_BLOWSNOW USE MODD_BLOWSNOW_n @@ -292,6 +293,13 @@ END IF !* 1. TEMPORAL ADVANCE OF PROGNOSTIC VARIABLES ! +PPABSM(:,:,:) = PPABST(:,:,:) +! +IF (LACTIT .OR. LACTIT_LIMA) THEN + PTHM(:,:,:) = PTHT(:,:,:) + PRCM(:,:,:) = PRT(:,:,:,2) +END IF + PUT(:,:,:)=PUS(:,:,:) PVT(:,:,:)=PVS(:,:,:) PWT(:,:,:)=PWS(:,:,:) @@ -304,12 +312,6 @@ PTHT(:,:,:)=PTHS(:,:,:) ! PRT(:,:,:,1:KRR)=PRS(:,:,:,1:KRR) ! -PPABSM(:,:,:) = PPABST(:,:,:) -! -IF (LACTIT) THEN - PTHM(:,:,:) = PTHT(:,:,:) - PRCM(:,:,:) = PRT(:,:,:,2) -END IF ! Turbulence ! IF (SIZE(PTKET,1) /= 0) PTKET(:,:,:)=PTKES(:,:,:) diff --git a/src/MNH/ini_budget.f90 b/src/MNH/ini_budget.f90 index 74c1ae3193b7dca6a51c275b5a03d94a31aa15c8..7b58305a45fa1795eb77ef76683973f5fe156190 100644 --- a/src/MNH/ini_budget.f90 +++ b/src/MNH/ini_budget.f90 @@ -1,13 +1,18 @@ -!MNH_LIC Copyright 1994-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. !----------------------------------------------------------------- +!--------------- special set of characters for RCS information +!----------------------------------------------------------------- +! $Source: /home/cvsroot/MNH-VX-Y-Z/src/MNH/ini_budget.f90,v $ $Revision: 1.3.2.5.2.2.2.2.10.2.2.5.2.1 $ +! masdev4_8 budget 2008/06/20 10:08:26 +!----------------------------------------------------------------- ! ###################### MODULE MODI_INI_BUDGET ! ###################### INTERFACE - SUBROUTINE INI_BUDGET(KLUOUT,PTSTEP,KSV,KRR, & + SUBROUTINE INI_BUDGET(KLUOUT, PTSTEP,KSV,KRR, & ONUMDIFU,ONUMDIFTH,ONUMDIFSV, & OHORELAX_UVWTH,OHORELAX_RV,OHORELAX_RC,OHORELAX_RR, & OHORELAX_RI,OHORELAX_RS, OHORELAX_RG, OHORELAX_RH,OHORELAX_TKE, & @@ -66,7 +71,7 @@ END MODULE MODI_INI_BUDGET ! ! ! ################################################################# - SUBROUTINE INI_BUDGET(KLUOUT,PTSTEP,KSV,KRR, & + SUBROUTINE INI_BUDGET(KLUOUT, PTSTEP,KSV,KRR, & ONUMDIFU,ONUMDIFTH,ONUMDIFSV, & OHORELAX_UVWTH,OHORELAX_RV,OHORELAX_RC,OHORELAX_RR, & OHORELAX_RI,OHORELAX_RS, OHORELAX_RG, OHORELAX_RH,OHORELAX_TKE, & @@ -152,7 +157,6 @@ END MODULE MODI_INI_BUDGET !! C. Barthe 01/2016 Add budget for LIMA !! C.LAc 10/2016 Add budget for droplet deposition !! Philippe Wautelet: 05/2016-04/2018: new data structures and calls for I/O - !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS @@ -172,7 +176,8 @@ USE MODD_PARAM_LIMA, ONLY : OWARM=>LWARM, OCOLD=>LCOLD, OSEDI=>LSEDI, & OHHONI=>LHHONI, ORAIN=>LRAIN, OSEDC=>LSEDC, & ONUCL=>LNUCL, OACTI=>LACTI, OSNOW=>LSNOW, & OHAIL=>LHAIL, OSCAV=>LSCAV, OMEYERS=>LMEYERS,& - ODEPOC=>LDEPOC + ODEPOC=>LDEPOC, OPTSPLIT=>LPTSPLIT, & + NMOD_CCN ! USE MODE_ll USE MODE_IO_ll @@ -787,47 +792,58 @@ IF (LBU_RTH) THEN IF (HCLOUD /= 'NONE' .AND. HCLOUD /= 'KHKO' .AND. HCLOUD /= 'C2R2') & IPROACTV(4,IPROC) = NNEGATH IPROC=IPROC+1 + ! + ! Microphysical budgets + ! IF (HCLOUD == 'LIMA') THEN - IF (OWARM .AND. OACTI) IPROACTV(4,IPROC) = NHENUTH - IPROC=IPROC+1 - IF (OWARM .AND. ORAIN) IPROACTV(4,IPROC) = NREVATH - IPROC=IPROC+1 - IF (OCOLD .AND. ONUCL) IPROACTV(4,IPROC) = NHINDTH - IPROC=IPROC+1 - IF (OCOLD .AND. ONUCL) IPROACTV(4,IPROC) = NHINCTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. OHHONI .AND. ONUCL) IPROACTV(4,IPROC) = NHONHTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. ONUCL) IPROACTV(4,IPROC) = NHONCTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. ONUCL) IPROACTV(4,IPROC) = NHONRTH - IPROC=IPROC+1 - IF (OCOLD .AND. OSNOW) IPROACTV(4,IPROC) = NDEPSTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(4,IPROC) = NDEPGTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(4,IPROC) = NIMLTTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(4,IPROC) = NBERFITH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. OSNOW) IPROACTV(4,IPROC) = NRIMTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. OSNOW) IPROACTV(4,IPROC) = NACCTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(4,IPROC) = NCFRZTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(4,IPROC) = NWETGTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(4,IPROC) = NDRYGTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(4,IPROC) = NGMLTTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. OHAIL) IPROACTV(4,IPROC) = NWETHTH - IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. OHAIL) IPROACTV(4,IPROC) = NHMLTTH - IPROC=IPROC+1 - IPROACTV(4,IPROC) = NCEDSTH - IPROC=IPROC+1 + IF (OPTSPLIT) IPROACTV(4,IPROC) = NSEDITH + IPROC=IPROC+1 + IF (OWARM .AND. OACTI .AND. NMOD_CCN.GE.1) IPROACTV(4,IPROC) = NHENUTH + IPROC=IPROC+1 + IF (.NOT.OPTSPLIT) THEN + IF (OWARM .AND. ORAIN) IPROACTV(4,IPROC) = NREVATH + IPROC=IPROC+1 + END IF + IF (OCOLD .AND. ONUCL) IPROACTV(4,IPROC) = NHINDTH + IPROC=IPROC+1 + IF (OCOLD .AND. ONUCL) IPROACTV(4,IPROC) = NHINCTH + IPROC=IPROC+1 + IF (OCOLD .AND. ONUCL .AND. OHHONI .AND. NMOD_CCN.GE.1) IPROACTV(4,IPROC) = NHONHTH + IPROC=IPROC+1 + IF (OPTSPLIT) THEN + IPROACTV(4,IPROC) = NREVATH + IPROC=IPROC+1 + END IF + IF (OCOLD .AND. OWARM .AND. ONUCL) IPROACTV(4,IPROC) = NHONCTH + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. ONUCL .AND. ORAIN)) IPROACTV(4,IPROC) = NHONRTH + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) IPROACTV(4,IPROC) = NDEPSTH + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(4,IPROC) = NDEPGTH + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM)) IPROACTV(4,IPROC) = NIMLTTH + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM)) IPROACTV(4,IPROC) = NBERFITH + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(4,IPROC) = NRIMTH + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW .AND. ORAIN)) IPROACTV(4,IPROC) = NACCTH + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(4,IPROC) = NCFRZTH + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(4,IPROC) = NWETGTH + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(4,IPROC) = NDRYGTH + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(4,IPROC) = NGMLTTH + IPROC=IPROC+1 + IF (.NOT.OPTSPLIT .AND. OHAIL) IPROACTV(4,IPROC) = NWETHTH + IPROC=IPROC+1 + IF (.NOT.OPTSPLIT .AND. OHAIL) IPROACTV(4,IPROC) = NHMLTTH + IPROC=IPROC+1 + IPROACTV(4,IPROC) = NCEDSTH + IPROC=IPROC+1 ELSE IF (HCLOUD(1:3) == 'ICE' .OR. (HCLOUD == 'C2R2' .AND. (.NOT. LSUPSAT)) & .OR. ( HCLOUD == 'KHKO' .AND. (.NOT. LSUPSAT)) ) & @@ -871,7 +887,7 @@ IF (LBU_RTH) THEN HCLOUD == 'REVE') IPROACTV(4,IPROC) = NCONDTH IPROC=IPROC+1 IF ((HCLOUD == 'KHKO') .OR. (HCLOUD == 'C2R2')) IPROACTV(4,IPROC) = NNECONTH - END IF + END IF ! YWORK2(4,1) = 'INIF_' YWORK2(4,2) = 'ENDF_' @@ -917,16 +933,24 @@ IF (LBU_RTH) THEN IPROC=IPROC+1 IF (HCLOUD == 'LIMA') THEN - YWORK2(4,IPROC) = 'HENU_' + YWORK2(4,IPROC) = 'SEDI_' IPROC=IPROC+1 - YWORK2(4,IPROC) = 'REVA_' + YWORK2(4,IPROC) = 'HENU_' IPROC=IPROC+1 + IF (.NOT.OPTSPLIT) THEN + YWORK2(4,IPROC) = 'REVA_' + IPROC=IPROC+1 + END IF YWORK2(4,IPROC) = 'HIND_' IPROC=IPROC+1 YWORK2(4,IPROC) = 'HINC_' IPROC=IPROC+1 YWORK2(4,IPROC) = 'HONH_' IPROC=IPROC+1 + IF (OPTSPLIT) THEN + YWORK2(4,IPROC) = 'REVA_' + IPROC=IPROC+1 + END IF YWORK2(4,IPROC) = 'HONC_' IPROC=IPROC+1 YWORK2(4,IPROC) = 'HONR_' @@ -1136,24 +1160,31 @@ IF (LBU_RRV) THEN IPROC=IPROC+1 IF (HCLOUD /= 'NONE' .AND. HCLOUD /= 'KHKO' .AND. HCLOUD /= 'C2R2') & IPROACTV(6,IPROC) = NNEGARV - IPROC=IPROC+1 - -IF (HCLOUD == 'LIMA') THEN - IF (OWARM .AND. OACTI) IPROACTV(6,IPROC) = NHENURV - IPROC=IPROC+1 - IF (OWARM .AND. ORAIN) IPROACTV(6,IPROC) = NREVARV + IPROC=IPROC+1 + ! + ! Microphysical budgets + ! + IF (HCLOUD == 'LIMA') THEN + IF (OWARM .AND. OACTI .AND. NMOD_CCN.GE.1) IPROACTV(6,IPROC) = NHENURV IPROC=IPROC+1 - IF (OCOLD .AND. ONUCL) IPROACTV(6,IPROC) = NHINDRV + IF (.NOT.OPTSPLIT) THEN + IF (OWARM .AND. ORAIN) IPROACTV(6,IPROC) = NREVARV + IPROC=IPROC+1 + END IF + IF (OCOLD .AND. ONUCL) IPROACTV(6,IPROC) = NHINDRV IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. OHHONI .AND. ONUCL) IPROACTV(6,IPROC) = NHONHRV + IF (OCOLD .AND. ONUCL .AND. OHHONI .AND. NMOD_CCN.GE.1) IPROACTV(6,IPROC) = NHONHRV IPROC=IPROC+1 - IF (OCOLD .AND. OSNOW) IPROACTV(6,IPROC) = NDEPSRV + IF (OPTSPLIT) THEN + IPROACTV(6,IPROC) = NREVARV + IPROC=IPROC+1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) IPROACTV(6,IPROC) = NDEPSRV IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(6,IPROC) = NDEPGRV + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(6,IPROC) = NDEPGRV IPROC=IPROC+1 - IPROACTV(6,IPROC) = NCEDSRV + IPROACTV(6,IPROC) = NCEDSRV IPROC=IPROC+1 - ELSE IF ((HCLOUD == 'C2R2' .AND. (.NOT. LSUPSAT)) & .OR. ( HCLOUD == 'KHKO' .AND. (.NOT. LSUPSAT)) & @@ -1214,15 +1245,21 @@ END IF IPROC=IPROC+1 YWORK2(6,IPROC) = 'NEGA_' IPROC=IPROC+1 -IF (HCLOUD == 'LIMA') THEN + IF (HCLOUD == 'LIMA') THEN YWORK2(6,IPROC) = 'HENU_' IPROC=IPROC+1 - YWORK2(6,IPROC) = 'REVA_' - IPROC=IPROC+1 + IF (.NOT.OPTSPLIT) THEN + YWORK2(6,IPROC) = 'REVA_' + IPROC=IPROC+1 + END IF YWORK2(6,IPROC) = 'HIND_' IPROC=IPROC+1 YWORK2(6,IPROC) = 'HONH_' IPROC=IPROC+1 + IF (OPTSPLIT) THEN + YWORK2(6,IPROC) = 'REVA_' + IPROC=IPROC+1 + END IF YWORK2(6,IPROC) = 'DEPS_' IPROC=IPROC+1 YWORK2(6,IPROC) = 'DEPG_' @@ -1308,37 +1345,51 @@ IF (LBU_RRC) THEN IF (HCLOUD /= 'NONE' .AND. HCLOUD /= 'KHKO' .AND. HCLOUD /= 'C2R2') & IPROACTV(7,IPROC) = NNEGARC IPROC=IPROC+1 - + ! + ! Microphysical processes + ! IF (HCLOUD == 'LIMA') THEN - IF (OWARM .AND. OSEDC) IPROACTV(7,IPROC) = NSEDIRC + IF (OPTSPLIT .AND. OWARM .AND. ORAIN) IPROACTV(7,IPROC) = NCORRRC IPROC=IPROC+1 - IF (OWARM .AND. ODEPOC) IPROACTV(7,IPROC) = NDEPORC + IF (OWARM .AND. OSEDC) IPROACTV(7,IPROC) = NSEDIRC IPROC=IPROC+1 - IF (OWARM .AND. OACTI) IPROACTV(7,IPROC) = NHENURC + IF (OWARM .AND. ODEPOC) IPROACTV(7,IPROC) = NDEPORC IPROC=IPROC+1 - IF (OWARM .AND. ORAIN) IPROACTV(7,IPROC) = NAUTORC + IF (OPTSPLIT .AND. OWARM .AND. ORAIN) IPROACTV(7,IPROC) = NR2C1RC IPROC=IPROC+1 - IF (OWARM .AND. ORAIN) IPROACTV(7,IPROC) = NACCRRC + IF (OWARM .AND. OACTI .AND. NMOD_CCN.GE.1) IPROACTV(7,IPROC) = NHENURC IPROC=IPROC+1 - IF (OWARM .AND. ORAIN) IPROACTV(7,IPROC) = NREVARC + IF (OPTSPLIT) THEN + IF (OCOLD .AND. ONUCL) IPROACTV(7,IPROC) = NHINCRC + IPROC=IPROC+1 + END IF + IF (OPTSPLIT .OR. (OWARM .AND. ORAIN)) IPROACTV(7,IPROC) = NAUTORC IPROC=IPROC+1 - IF (OCOLD .AND. ONUCL) IPROACTV(7,IPROC) = NHINCRC + IF (OPTSPLIT .OR. (OWARM .AND. ORAIN)) IPROACTV(7,IPROC) = NACCRRC IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. ONUCL) IPROACTV(7,IPROC) = NHONCRC + IF (OPTSPLIT .OR. (OWARM .AND. ORAIN)) IPROACTV(7,IPROC) = NREVARC IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(7,IPROC) = NIMLTRC + IF (.NOT.OPTSPLIT) THEN + IF (OCOLD .AND. ONUCL) IPROACTV(7,IPROC) = NHINCRC + IPROC=IPROC+1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. ONUCL)) IPROACTV(7,IPROC) = NHONCRC IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(7,IPROC) = NBERFIRC + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM)) IPROACTV(7,IPROC) = NIMLTRC IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. OSNOW) IPROACTV(7,IPROC) = NRIMRC + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM)) IPROACTV(7,IPROC) = NBERFIRC IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(7,IPROC) = NWETGRC + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(7,IPROC) = NRIMRC IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(7,IPROC) = NDRYGRC + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(7,IPROC) = NWETGRC IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. OHAIL) IPROACTV(7,IPROC) = NWETHRC + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(7,IPROC) = NDRYGRC IPROC=IPROC+1 - IPROACTV(7,IPROC) = NCEDSRC + IF (OPTSPLIT) IPROACTV(7,IPROC) = NCVRCRC + IPROC=IPROC+1 + IF (.NOT.OPTSPLIT .AND. OHAIL) IPROACTV(7,IPROC) = NWETHRC + IPROC=IPROC+1 + IPROACTV(7,IPROC) = NCEDSRC IPROC=IPROC+1 ELSE IF (HCLOUD(1:3) == 'KES' ) IPROACTV(7,IPROC ) = NACCRRC @@ -1419,20 +1470,30 @@ IF (LBU_RRC) THEN IPROC=IPROC+1 IF (HCLOUD == 'LIMA') THEN + YWORK2(7,IPROC) = 'CORR_' + IPROC=IPROC+1 YWORK2(7,IPROC) = 'SEDI_' IPROC=IPROC+1 YWORK2(7,IPROC) = 'DEPO_' IPROC=IPROC+1 + YWORK2(7,IPROC) = 'R2C1_' + IPROC=IPROC+1 YWORK2(7,IPROC) = 'HENU_' IPROC=IPROC+1 + IF (OPTSPLIT) THEN + YWORK2(7,IPROC) = 'HINC_' + IPROC=IPROC+1 + END IF YWORK2(7,IPROC) = 'AUTO_' IPROC=IPROC+1 YWORK2(7,IPROC) = 'ACCR_' IPROC=IPROC+1 YWORK2(7,IPROC) = 'REVA_' IPROC=IPROC+1 - YWORK2(7,IPROC) = 'HINC_' - IPROC=IPROC+1 + IF (.NOT.OPTSPLIT) THEN + YWORK2(7,IPROC) = 'HINC_' + IPROC=IPROC+1 + END IF YWORK2(7,IPROC) = 'HONC_' IPROC=IPROC+1 YWORK2(7,IPROC) = 'IMLT_' @@ -1445,6 +1506,8 @@ IF (LBU_RRC) THEN IPROC=IPROC+1 YWORK2(7,IPROC) = 'DRYG_' IPROC=IPROC+1 + YWORK2(7,IPROC) = 'CVRC_' + IPROC=IPROC+1 YWORK2(7,IPROC) = 'WETH_' IPROC=IPROC+1 YWORK2(7,IPROC) = 'CEDS_' @@ -1525,31 +1588,39 @@ IF (LBU_RRR) THEN IPROC=IPROC+1 IF ( HCLOUD /= 'NONE' ) IPROACTV(8,IPROC) = NNEGARR IPROC=IPROC+1 - + ! + ! Microphysical processes + ! IF (HCLOUD == 'LIMA') THEN - IF (OWARM) IPROACTV(8,IPROC) = NSEDIRR + IF (OPTSPLIT .AND. OWARM .AND. ORAIN) IPROACTV(8,IPROC) = NCORRRR + IPROC=IPROC+1 + IF (OWARM .AND. ORAIN) IPROACTV(8,IPROC) = NSEDIRR + IPROC=IPROC+1 + IF (OPTSPLIT .AND. OWARM .AND. ORAIN) IPROACTV(8,IPROC) = NR2C1RR + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OWARM .AND. ORAIN)) IPROACTV(8,IPROC) = NAUTORR IPROC=IPROC+1 - IF (OWARM) IPROACTV(8,IPROC) = NAUTORR + IF (OPTSPLIT .OR. (OWARM .AND. ORAIN)) IPROACTV(8,IPROC) = NACCRRR IPROC=IPROC+1 - IF (OWARM) IPROACTV(8,IPROC) = NACCRRR + IF (OPTSPLIT .OR. (OWARM .AND. ORAIN)) IPROACTV(8,IPROC) = NREVARR IPROC=IPROC+1 - IF (OWARM) IPROACTV(8,IPROC) = NREVARR + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. ONUCL .AND. ORAIN)) IPROACTV(8,IPROC) = NHONRRR IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. ONUCL) IPROACTV(8,IPROC) = NHONRRR + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW .AND. ORAIN)) IPROACTV(8,IPROC) = NACCRR IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. OSNOW) IPROACTV(8,IPROC) = NACCRR + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(8,IPROC) = NCFRZRR IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(8,IPROC) = NCFRZRR + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(8,IPROC) = NWETGRR IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(8,IPROC) = NWETGRR + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(8,IPROC) = NDRYGRR IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(8,IPROC) = NDRYGRR + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(8,IPROC) = NGMLTRR IPROC=IPROC+1 - IF (OCOLD .AND. OWARM) IPROACTV(8,IPROC) = NGMLTRR + IF (OPTSPLIT) IPROACTV(8,IPROC) = NCVRCRR IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. OHAIL) IPROACTV(8,IPROC) = NWETHRR + IF (.NOT.OPTSPLIT .AND. OHAIL) IPROACTV(8,IPROC) = NWETHRR IPROC=IPROC+1 - IF (OCOLD .AND. OWARM .AND. OHAIL) IPROACTV(8,IPROC) = NHMLTRR + IF (.NOT.OPTSPLIT .AND. OHAIL) IPROACTV(8,IPROC) = NHMLTRR ELSE IF (HCLOUD(1:3) == 'KES' ) IPROACTV(8,IPROC) = NSEDIRR IPROC=IPROC+1 @@ -1616,8 +1687,12 @@ IF (LBU_RRR) THEN IPROC=IPROC+1 IF (HCLOUD == 'LIMA') THEN + YWORK2(8,IPROC) = 'CORR_' + IPROC=IPROC+1 YWORK2(8,IPROC) = 'SEDI_' IPROC=IPROC+1 + YWORK2(8,IPROC) = 'R2C1_' + IPROC=IPROC+1 YWORK2(8,IPROC) = 'AUTO_' IPROC=IPROC+1 YWORK2(8,IPROC) = 'ACCR_' @@ -1636,6 +1711,8 @@ IF (HCLOUD == 'LIMA') THEN IPROC=IPROC+1 YWORK2(8,IPROC) = 'GMLT_' IPROC=IPROC+1 + YWORK2(8,IPROC) = 'CVRC_' + IPROC=IPROC+1 YWORK2(8,IPROC) = 'WETH_' IPROC=IPROC+1 YWORK2(8,IPROC) = 'HMLT_' @@ -1735,39 +1812,43 @@ IF (LBU_RRI) THEN IPROC=IPROC+1 IF( HCLOUD /= 'NONE' ) IPROACTV(9,IPROC) = NNEGARI IPROC=IPROC+1 - + ! + ! Microphysical processes + ! IF (HCLOUD=='LIMA') THEN - IF(OCOLD .AND. OSEDI) IPROACTV(9,IPROC) = NSEDIRI + IF (OPTSPLIT .AND. OCOLD .AND. OSNOW) IPROACTV(9,IPROC) = NCORRRI IPROC=IPROC+1 - IF(OCOLD .AND. ONUCL) IPROACTV(9,IPROC) = NHINDRI + IF (OCOLD .AND. OSEDI) IPROACTV(9,IPROC) = NSEDIRI IPROC=IPROC+1 - IF(OCOLD .AND. ONUCL) IPROACTV(9,IPROC) = NHINCRI + IF (OCOLD .AND. ONUCL) IPROACTV(9,IPROC) = NHINDRI IPROC=IPROC+1 - IF(OCOLD .AND. OWARM .AND. OHHONI .AND. ONUCL) IPROACTV(9,IPROC) = NHONHRI + IF (OCOLD .AND. ONUCL) IPROACTV(9,IPROC) = NHINCRI IPROC=IPROC+1 - IF(OCOLD .AND. OWARM .AND. ONUCL) IPROACTV(9,IPROC) = NHONCRI + IF (OCOLD .AND. ONUCL .AND. OHHONI .AND. NMOD_CCN.GE.1) IPROACTV(9,IPROC) = NHONHRI IPROC=IPROC+1 - IF(OCOLD .AND. OSNOW) IPROACTV(9,IPROC) = NCNVIRI + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. ONUCL)) IPROACTV(9,IPROC) = NHONCRI IPROC=IPROC+1 - IF(OCOLD .AND. OSNOW) IPROACTV(9,IPROC) = NCNVSRI + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) IPROACTV(9,IPROC) = NCNVIRI IPROC=IPROC+1 - IF(OCOLD .AND. OSNOW) IPROACTV(9,IPROC) = NAGGSRI + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) IPROACTV(9,IPROC) = NCNVSRI IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(9,IPROC) = NIMLTRI + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) IPROACTV(9,IPROC) = NAGGSRI IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(9,IPROC) = NBERFIRI + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM)) IPROACTV(9,IPROC) = NIMLTRI IPROC=IPROC+1 - IF(OCOLD .AND. OWARM .AND. OSNOW) IPROACTV(9,IPROC) = NHMSRI + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM)) IPROACTV(9,IPROC) = NBERFIRI IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(9,IPROC) = NCFRZRI + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(9,IPROC) = NHMSRI IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(9,IPROC) = NWETGRI + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(9,IPROC) = NCFRZRI IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(9,IPROC) = NDRYGRI + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(9,IPROC) = NWETGRI IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(9,IPROC) = NHMGRI + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(9,IPROC) = NDRYGRI IPROC=IPROC+1 - IF(OCOLD .AND. OWARM .AND. OHAIL) IPROACTV(9,IPROC) = NWETHRI + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(9,IPROC) = NHMGRI + IPROC=IPROC+1 + IF (.NOT.OPTSPLIT .AND. OHAIL) IPROACTV(9,IPROC) = NWETHRI IPROC=IPROC+1 IPROACTV(9,IPROC) = NCEDSRI ELSE @@ -1822,6 +1903,8 @@ IF (LBU_RRI) THEN YWORK2(9,IPROC) = 'NEGA_' IPROC= IPROC+1 IF (HCLOUD=='LIMA') THEN + YWORK2(9,IPROC) = 'CORR_' + IPROC= IPROC+1 YWORK2(9,IPROC) = 'SEDI_' IPROC= IPROC+1 YWORK2(9,IPROC) = 'HIND_' @@ -1922,32 +2005,36 @@ IF (LBU_RRS) THEN IPROC= IPROC+1 IF( HCLOUD /= 'NONE' ) IPROACTV(10,IPROC) = NNEGARS IPROC=IPROC+1 - -IF (HCLOUD=='LIMA') THEN - IF(OCOLD) IPROACTV(10,IPROC) = NSEDIRS - IPROC=IPROC+1 - IF(OCOLD) IPROACTV(10,IPROC) = NCNVIRS - IPROC=IPROC+1 - IF(OCOLD) IPROACTV(10,IPROC) = NDEPSRS - IPROC=IPROC+1 - IF(OCOLD) IPROACTV(10,IPROC) = NCNVSRS - IPROC=IPROC+1 - IF(OCOLD) IPROACTV(10,IPROC) = NAGGSRS - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(10,IPROC) = NRIMRS - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(10,IPROC) = NHMSRS - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(10,IPROC) = NACCRS - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(10,IPROC) = NCMELRS - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(10,IPROC) = NWETGRS - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(10,IPROC) = NDRYGRS - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM .AND. OHAIL) IPROACTV(10,IPROC) = NWETHRS - IPROC=IPROC+1 + ! + ! Microphysical processes + ! + IF (HCLOUD=='LIMA') THEN + IF (OPTSPLIT .AND. OCOLD .AND. OSNOW) IPROACTV(10,IPROC) = NCORRRS + IPROC=IPROC+1 + IF (OCOLD .AND. OSNOW) IPROACTV(10,IPROC) = NSEDIRS + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) IPROACTV(10,IPROC) = NCNVIRS + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) IPROACTV(10,IPROC) = NDEPSRS + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) IPROACTV(10,IPROC) = NCNVSRS + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) IPROACTV(10,IPROC) = NAGGSRS + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(10,IPROC) = NRIMRS + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(10,IPROC) = NHMSRS + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW .AND. ORAIN)) IPROACTV(10,IPROC) = NACCRS + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(10,IPROC) = NCMELRS + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(10,IPROC) = NWETGRS + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(10,IPROC) = NDRYGRS + IPROC=IPROC+1 + IF (.NOT.OPTSPLIT .AND. OHAIL) IPROACTV(10,IPROC) = NWETHRS + IPROC=IPROC+1 ELSE IF( HCLOUD(1:3) == 'ICE') IPROACTV(10,IPROC) = NDEPSRS IPROC=IPROC+1 @@ -1990,6 +2077,8 @@ END IF YWORK2(10,IPROC) = 'NEGA_' IPROC= IPROC+1 IF (HCLOUD=='LIMA') THEN + YWORK2(10,IPROC) = 'CORR_' + IPROC= IPROC+1 YWORK2(10,IPROC) = 'SEDI_' IPROC= IPROC+1 YWORK2(10,IPROC) = 'CNVI_' @@ -2077,35 +2166,37 @@ IF (LBU_RRG) THEN IPROC=IPROC+1 IF( HCLOUD /= 'NONE' ) IPROACTV(11,IPROC) = NNEGARG IPROC=IPROC+1 - -IF (HCLOUD=='LIMA') THEN - IF(OCOLD) IPROACTV(11,IPROC) = NSEDIRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM .AND. ONUCL) IPROACTV(11,IPROC) = NHONRRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(11,IPROC) = NDEPGRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM .AND. OSNOW) IPROACTV(11,IPROC) = NRIMRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM .AND. OSNOW) IPROACTV(11,IPROC) = NACCRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM .AND. OSNOW) IPROACTV(11,IPROC) = NCMELRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(11,IPROC) = NCFRZRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(11,IPROC) = NWETGRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(11,IPROC) = NDRYGRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(11,IPROC) = NHMGRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM) IPROACTV(11,IPROC) = NGMLTRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM .AND. OHAIL) IPROACTV(11,IPROC) = NWETHRG - IPROC=IPROC+1 - IF(OCOLD .AND. OWARM .AND. OHAIL) IPROACTV(11,IPROC) = NCOHGRG - IPROC=IPROC+1 -ELSE + ! + ! Microphysical processes + ! + IF (HCLOUD=='LIMA') THEN + IF (OCOLD .AND. OSNOW) IPROACTV(11,IPROC) = NSEDIRG + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. ONUCL .AND. ORAIN)) IPROACTV(11,IPROC) = NHONRRG + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(11,IPROC) = NDEPGRG + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(11,IPROC) = NRIMRG + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. ORAIN .AND. OSNOW)) IPROACTV(11,IPROC) = NACCRG + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(11,IPROC) = NCMELRG + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(11,IPROC) = NCFRZRG + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(11,IPROC) = NWETGRG + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(11,IPROC) = NDRYGRG + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(11,IPROC) = NHMGRG + IPROC=IPROC+1 + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) IPROACTV(11,IPROC) = NGMLTRG + IPROC=IPROC+1 + IF (.NOT.OPTSPLIT .AND. OHAIL) IPROACTV(11,IPROC) = NWETHRG + IPROC=IPROC+1 + IF (.NOT.OPTSPLIT .AND. OHAIL) IPROACTV(11,IPROC) = NCOHGRG + IPROC=IPROC+1 + ELSE IF( HCLOUD(1:3) == 'ICE') IPROACTV(11,IPROC) = NSFRRG IPROC=IPROC+1 IF( HCLOUD(1:3) == 'ICE') IPROACTV(11,IPROC) = NDEPGRG @@ -2259,17 +2350,19 @@ IF (LBU_RRH) THEN IPROACTV(12,IPROC) = 3 END IF IPROC=IPROC+1 -! + ! + ! Microphysical processes + ! IF (HCLOUD=='LIMA' .AND. OHAIL) THEN IPROACTV(12,IPROC) = NSEDIRH IPROC=IPROC+1 IPROACTV(12,IPROC) = NWETGRH IPROC=IPROC+1 - IPROACTV(12,IPROC) = NWETHRH + IF (.NOT.OPTSPLIT) IPROACTV(12,IPROC) = NWETHRH IPROC=IPROC+1 - IPROACTV(12,IPROC) = NCOHGRH + IF (.NOT.OPTSPLIT) IPROACTV(12,IPROC) = NCOHGRH IPROC=IPROC+1 - IPROACTV(12,IPROC) = NHMLTRH + IF (.NOT.OPTSPLIT) IPROACTV(12,IPROC) = NHMLTRH ELSE IF( HCLOUD == 'ICE4') IPROACTV(12,IPROC) = NWETGRH IPROC=IPROC+1 @@ -2586,6 +2679,7 @@ END IF IF (GERROR) THEN !callabortstop CALL PRINT_MSG(NVERB_FATAL,'GEN','INI_BUDGET','') + STOP ENDIF !------------------------------------------------------------------------------- !* 5. ALLOCATE MEMORY FOR BUDGET STORAGE ARRAYS @@ -2763,65 +2857,95 @@ ELSEIF (JSV >= NSV_LIMA_BEG .AND. JSV <= NSV_LIMA_END) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'NEGA_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - IF (OWARM) THEN - IF (OSEDC) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'SEDI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF - IF (ODEPOC) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'DEPO_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF - IF (OACTI) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'HENU_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF + IF (OPTSPLIT .AND. OWARM .AND. ORAIN) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'CORR_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OSEDC) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'SEDI_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (ODEPOC) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'DEPO_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .AND. ORAIN) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'R2C1_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OWARM .AND. OACTI .AND. NMOD_CCN.GE.1) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'HENU_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OCOLD .AND. ONUCL .AND. OPTSPLIT) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'HINC_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. OWARM) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'SELF_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - IF (ORAIN) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'AUTO_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'ACCR_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'REVA_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF END IF - IF (OCOLD .AND. ONUCL) THEN + IF (OPTSPLIT .OR. ORAIN) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'AUTO_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. ORAIN) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'ACCR_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. ORAIN) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'REVA_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OCOLD .AND. ONUCL .AND. .NOT.OPTSPLIT) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'HINC_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. ONUCL)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'HONC_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 END IF - IF (OWARM .AND. OCOLD) THEN + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'IMLT_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - IF (OSNOW) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'RIM_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'RIM_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'WETG_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'DRYG_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - IF (OHAIL) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'WETH_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF + END IF + IF (OPTSPLIT) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'CVRC_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (.NOT.OPTSPLIT .AND. OHAIL) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'WETH_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 END IF ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'CEDS_' @@ -2832,54 +2956,85 @@ ELSEIF (JSV >= NSV_LIMA_BEG .AND. JSV <= NSV_LIMA_END) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'NEGA_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + IF (OPTSPLIT .AND. OWARM .AND. ORAIN) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'CORR_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF IF (OWARM .AND. ORAIN) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'SEDI_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .AND. ORAIN) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'R2C1_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. ORAIN) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'AUTO_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. ORAIN) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'SCBU_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. ORAIN) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'REVA_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. ORAIN) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'BRKU_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 END IF - IF (OCOLD .AND. OWARM .AND. ORAIN .AND. ONUCL) THEN + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. ORAIN .AND. ONUCL)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'HONR_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 END IF - IF (OWARM .AND. OCOLD) THEN - IF (OSNOW) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'ACC_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'ACC_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'CFRZ_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'WETG_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'DRYG_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'GMLT_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - IF (OHAIL) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'WETH_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'HMLT_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF + END IF + IF (OPTSPLIT) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'CVRC_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (.NOT.OPTSPLIT .AND. OHAIL) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'WETH_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (.NOT.OPTSPLIT .AND. OHAIL) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'HMLT_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 END IF ! ELSE IF (JSV.GE.NSV_LIMA_CCN_FREE .AND. JSV.LT.(NSV_LIMA_CCN_FREE+NMOD_CCN)) THEN @@ -2887,12 +3042,12 @@ ELSEIF (JSV >= NSV_LIMA_BEG .AND. JSV <= NSV_LIMA_END) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'NEGA_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - IF (OWARM .AND. OACTI) THEN + IF (OWARM .AND. OACTI .AND. NMOD_CCN.GE.1) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'HENU_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 END IF - IF (OCOLD .AND. ONUCL .AND. OHHONI .AND. OWARM) THEN + IF (OCOLD .AND. ONUCL .AND. OHHONI .AND. NMOD_CCN.GE.1) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'HONH_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 @@ -2914,68 +3069,85 @@ ELSEIF (JSV >= NSV_LIMA_BEG .AND. JSV <= NSV_LIMA_END) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'NEGA_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - IF (OCOLD) THEN - IF (OSEDI) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'SEDI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF - IF (ONUCL) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'HIND_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'HINC_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - IF (OWARM .AND. OHHONI) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'HONH_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF - IF (OWARM) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'HONC_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF - END IF - IF (OSNOW) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'CNVI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'CNVS_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'AGGS_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF - END IF - IF (OWARM .AND. OCOLD) THEN + IF (OPTSPLIT .AND. OCOLD .AND. OSNOW) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'CORR_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OSEDI) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'SEDI_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OCOLD .AND. ONUCL) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'HIND_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OCOLD .AND. ONUCL) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'HINC_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OCOLD .AND. ONUCL .AND. OHHONI .AND. NMOD_CCN.GE.1) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'HONH_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. ONUCL)) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'HONC_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'CNVI_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'CNVS_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OSNOW)) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'AGGS_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'IMLT_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - IF (OSNOW) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'HMS_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'HMS_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'CFRZ_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'WETG_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'DRYG_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 + END IF + IF (OPTSPLIT .OR. (OCOLD .AND. OWARM .AND. OSNOW)) THEN ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'HMG_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - IF (OHAIL) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'WETH_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF + END IF + IF (.NOT.OPTSPLIT .AND. OHAIL) THEN + ILAST_PROC_NBR = ILAST_PROC_NBR + 1 + YWORK2(12+JSV,ILAST_PROC_NBR)= 'WETH_' + IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 END IF ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'CEDS_' @@ -2991,11 +3163,6 @@ ELSEIF (JSV >= NSV_LIMA_BEG .AND. JSV <= NSV_LIMA_END) THEN YWORK2(12+JSV,ILAST_PROC_NBR)= 'HIND_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 END IF - ! IF (OCOLD .AND. OWARM) THEN - ! ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - ! YWORK2(12+JSV,ILAST_PROC_NBR)= 'IMLT_' - ! IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ! END IF ILAST_PROC_NBR = ILAST_PROC_NBR + 1 YWORK2(12+JSV,ILAST_PROC_NBR)= 'CEDS_' IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 diff --git a/src/MNH/ini_lima.f90 b/src/MNH/ini_lima.f90 index 6f6a3ba6bba4220564e2e37351f4750c62770d37..8f4671fb8ba6ed997c1d0c1e5bae5b164231d48d 100644 --- a/src/MNH/ini_lima.f90 +++ b/src/MNH/ini_lima.f90 @@ -73,8 +73,9 @@ REAL, INTENT(IN) :: PDZMIN ! minimun vertical mesh size !* 0.2 Declarations of local variables : ! REAL :: ZT ! Work variable -REAL :: ZVTRMAX +REAL, DIMENSION(7) :: ZVTRMAX ! +INTEGER :: JI INTEGER :: ILUOUT0 ! Logical unit number for output-listing INTEGER :: IRESP ! Return code of FM-routines ! @@ -89,27 +90,40 @@ INTEGER :: IRESP ! Return code of FM-routines ILUOUT0 = TLUOUT0%NLU ! ! +ZVTRMAX(2) = 0.3 ! Maximum cloud droplet fall speed +ZVTRMAX(3) = 15. ! Maximum rain drop fall speed +ZVTRMAX(4) = 1.5 ! Maximum ice crystal fall speed +ZVTRMAX(5) = 3.0 ! Maximum snow fall speed +ZVTRMAX(6) = 15. ! Maximum graupel fall speed +ZVTRMAX(7) = 30. ! Maximum hail fall speed +! +! NSPLITSED +! +DO JI=2,7 + NSPLITSED(JI) = 1 + SPLIT : DO + ZT = PTSTEP / FLOAT(NSPLITSED(JI)) + IF ( ZT * ZVTRMAX(JI) / PDZMIN < 1.0) EXIT SPLIT + NSPLITSED(JI) = NSPLITSED(JI) + 1 + END DO SPLIT +END DO +! ! KSPLITR -ZVTRMAX = 30. ! Maximum rain drop fall speed ! KSPLITR = 1 SPLITR : DO ZT = PTSTEP / FLOAT(KSPLITR) - IF ( ZT * ZVTRMAX / PDZMIN < 1.0) EXIT SPLITR + IF ( ZT * ZVTRMAX(7) / PDZMIN < 1.0) EXIT SPLITR KSPLITR = KSPLITR + 1 END DO SPLITR ! ! ! KSPLITG -ZVTRMAX = 30. -IF( LHAIL ) THEN - ZVTRMAX = 60. ! Hail case -END IF ! KSPLITG = 1 SPLITG : DO ZT = 2.* PTSTEP / FLOAT(KSPLITG) - IF ( ZT * ZVTRMAX / PDZMIN .LT. 1.) EXIT SPLITG + IF ( ZT * ZVTRMAX(7) / PDZMIN .LT. 1.) EXIT SPLITG KSPLITG = KSPLITG + 1 END DO SPLITG ! @@ -131,7 +145,7 @@ XRTMIN(6) = 1.0E-15 ! rg XRTMIN(7) = 1.0E-15 ! rh ALLOCATE( XCTMIN(7) ) XCTMIN(1) = 1.0 ! Not used -XCTMIN(2) = 1.0E+4 ! Nc +XCTMIN(2) = 1.0E-3 ! Nc !XCTMIN(3) = 1.0E+1 ! Nr XCTMIN(3) = 1.0E-3 ! Nr XCTMIN(4) = 1.0E-3 ! Ni diff --git a/src/MNH/ini_lima_cold_mixed.f90 b/src/MNH/ini_lima_cold_mixed.f90 index 50d7acf3f84120674b34a544df7ab8b4318d2f11..a16a6d5c4c7e3b7e20f7c793f25ef370bf30d557 100644 --- a/src/MNH/ini_lima_cold_mixed.f90 +++ b/src/MNH/ini_lima_cold_mixed.f90 @@ -2,7 +2,6 @@ !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. -!----------------------------------------------------------------- ! ############################### MODULE MODI_INI_LIMA_COLD_MIXED ! ############################### @@ -49,22 +48,22 @@ USE MODD_CST USE MODD_LUNIT, ONLY: TLUOUT0 USE MODD_PARAMETERS USE MODD_PARAM_LIMA +USE MODD_PARAM_LIMA_WARM USE MODD_PARAM_LIMA_COLD USE MODD_PARAM_LIMA_MIXED -USE MODD_PARAM_LIMA_WARM USE MODD_REF ! +USE MODI_LIMA_FUNCTIONS USE MODI_GAMMA USE MODI_GAMMA_INC -USE MODI_LIMA_FUNCTIONS -USE MODI_READ_XKER_GWETH -USE MODI_READ_XKER_RACCS -USE MODI_READ_XKER_RDRYG -USE MODI_READ_XKER_SDRYG -USE MODI_READ_XKER_SWETH USE MODI_RRCOLSS -USE MODI_RSCOLRG USE MODI_RZCOLX +USE MODI_RSCOLRG +USE MODI_LIMA_READ_XKER_RACCS +USE MODI_LIMA_READ_XKER_SDRYG +USE MODI_LIMA_READ_XKER_RDRYG +USE MODI_LIMA_READ_XKER_SWETH +USE MODI_LIMA_READ_XKER_GWETH ! IMPLICIT NONE ! @@ -261,11 +260,13 @@ IF (GFLAG) THEN WRITE(UNIT=ILUOUT0,FMT='(" XLBEXH =",E13.6," XLBH =",E13.6)') XLBEXH,XLBH END IF ! -XLBDAS_MAX = 100000.0 +XLBDAS_MAX = 500000 XLBDAG_MAX = 100000.0 ! ZCONC_MAX = 1.E6 ! Maximal concentration for falling particules set to 1 per cc -XLBDAS_MAX = ( ZCONC_MAX/XCCS )**(1./XCXS) +!XLBDAS_MAX = ( ZCONC_MAX/XCCS )**(1./XCXS) +!XLBDAG_MAX = ( ZCONC_MAX/XCCG )**(1./XCXG) +!XLBDAH_MAX = ( ZCONC_MAX/XCCH )**(1./XCXH) ! !------------------------------------------------------------------------------- ! @@ -316,7 +317,33 @@ XFSEDG = XCG*XAG*XCCG*MOMG(XALPHAG,XNUG,XBG+XDG)* & XEXSEDH = (XBH+XDH-XCXH)/(XBH-XCXH) XFSEDH = XCH*XAH*XCCH*MOMG(XALPHAH,XNUH,XBH+XDH)* & (XAH*XCCH*MOMG(XALPHAH,XNUH,XBH))**(-XEXSEDH)*(ZRHO00)**XCEXVT -! +! +! +! +XLB(4) = XLBI +XLBEX(4) = XLBEXI +XD(4) = XDI +XFSEDR(4) = XFSEDRI +XFSEDC(4) = XFSEDCI +! +XLB(5) = XLBS +XLBEX(5) = XLBEXS +XD(5) = XDS +XFSEDR(5) = XCS*GAMMA_X0D(XNUS+(XDS+XBS)/XALPHAS)/GAMMA_X0D(XNUS+XBS/XALPHAS)* & + (ZRHO00)**XCEXVT +! +XLB(6) = XLBG +XLBEX(6) = XLBEXG +XD(6) = XDG +XFSEDR(6) = XCG*GAMMA_X0D(XNUG+(XDG+XBG)/XALPHAG)/GAMMA_X0D(XNUG+XBG/XALPHAG)* & + (ZRHO00)**XCEXVT +! +XLB(7) = XLBH +XLBEX(7) = XLBEXH +XD(7) = XDH +XFSEDR(7) = XCH*GAMMA_X0D(XNUH+(XDH+XBH)/XALPHAH)/GAMMA_X0D(XNUH+XBH/XALPHAH)* & + (ZRHO00)**XCEXVT +! !------------------------------------------------------------------------------- ! ! @@ -741,10 +768,10 @@ ALLOCATE( XKER_RACCSS(NACCLBDAS,NACCLBDAR) ) ALLOCATE( XKER_RACCS (NACCLBDAS,NACCLBDAR) ) ALLOCATE( XKER_SACCRG(NACCLBDAR,NACCLBDAS) ) ! -CALL READ_XKER_RACCS (KACCLBDAS,KACCLBDAR,KND, & - PALPHAS,PNUS,PALPHAR,PNUR,PESR,PBS,PBR,PCS,PDS,PCR,PDR, & - PACCLBDAS_MAX,PACCLBDAR_MAX,PACCLBDAS_MIN,PACCLBDAR_MIN,& - PFDINFTY ) +CALL LIMA_READ_XKER_RACCS (KACCLBDAS,KACCLBDAR,KND, & + PALPHAS,PNUS,PALPHAR,PNUR,PESR,PBS,PBR,PCS,PDS,PCR,PDR, & + PACCLBDAS_MAX,PACCLBDAR_MAX,PACCLBDAS_MIN,PACCLBDAR_MIN,& + PFDINFTY ) IF( (KACCLBDAS/=NACCLBDAS) .OR. (KACCLBDAR/=NACCLBDAR) .OR. (KND/=IND) .OR. & (PALPHAS/=XALPHAS) .OR. (PNUS/=XNUS) .OR. & (PALPHAR/=XALPHAR) .OR. (PNUR/=XNUR) .OR. & @@ -822,10 +849,10 @@ IF( (KACCLBDAS/=NACCLBDAS) .OR. (KACCLBDAR/=NACCLBDAR) .OR. (KND/=IND) .OR. & END DO WRITE(UNIT=ILUOUT0,FMT='("END IF")') ELSE - CALL READ_XKER_RACCS (KACCLBDAS,KACCLBDAR,KND, & - PALPHAS,PNUS,PALPHAR,PNUR,PESR,PBS,PBR,PCS,PDS,PCR,PDR, & - PACCLBDAS_MAX,PACCLBDAR_MAX,PACCLBDAS_MIN,PACCLBDAR_MIN,& - PFDINFTY,XKER_RACCSS,XKER_RACCS,XKER_SACCRG ) + CALL LIMA_READ_XKER_RACCS (KACCLBDAS,KACCLBDAR,KND, & + PALPHAS,PNUS,PALPHAR,PNUR,PESR,PBS,PBR,PCS,PDS,PCR,PDR, & + PACCLBDAS_MAX,PACCLBDAR_MAX,PACCLBDAS_MIN,PACCLBDAR_MIN,& + PFDINFTY,XKER_RACCSS,XKER_RACCS,XKER_SACCRG ) WRITE(UNIT=ILUOUT0,FMT='(" Read XKER_RACCSS")') WRITE(UNIT=ILUOUT0,FMT='(" Read XKER_RACCS ")') WRITE(UNIT=ILUOUT0,FMT='(" Read XKER_SACCRG")') @@ -955,10 +982,10 @@ ZFDINFTY = 20.0 ! computing the kernels XKER_SDRYG ! ALLOCATE( XKER_SDRYG(NDRYLBDAG,NDRYLBDAS) ) ! -CALL READ_XKER_SDRYG (KDRYLBDAG,KDRYLBDAS,KND, & - PALPHAG,PNUG,PALPHAS,PNUS,PEGS,PBS,PCG,PDG,PCS,PDS, & - PDRYLBDAG_MAX,PDRYLBDAS_MAX,PDRYLBDAG_MIN,PDRYLBDAS_MIN, & - PFDINFTY ) +CALL LIMA_READ_XKER_SDRYG (KDRYLBDAG,KDRYLBDAS,KND, & + PALPHAG,PNUG,PALPHAS,PNUS,PEGS,PBS,PCG,PDG,PCS,PDS, & + PDRYLBDAG_MAX,PDRYLBDAS_MAX,PDRYLBDAG_MIN,PDRYLBDAS_MIN, & + PFDINFTY ) IF( (KDRYLBDAG/=NDRYLBDAG) .OR. (KDRYLBDAS/=NDRYLBDAS) .OR. (KND/=IND) .OR. & (PALPHAG/=XALPHAG) .OR. (PNUG/=XNUG) .OR. & (PALPHAS/=XALPHAS) .OR. (PNUS/=XNUS) .OR. & @@ -1007,10 +1034,10 @@ IF( (KDRYLBDAG/=NDRYLBDAG) .OR. (KDRYLBDAS/=NDRYLBDAS) .OR. (KND/=IND) .OR. & END DO WRITE(UNIT=ILUOUT0,FMT='("END IF")') ELSE - CALL READ_XKER_SDRYG (KDRYLBDAG,KDRYLBDAS,KND, & - PALPHAG,PNUG,PALPHAS,PNUS,PEGS,PBS,PCG,PDG,PCS,PDS, & - PDRYLBDAG_MAX,PDRYLBDAS_MAX,PDRYLBDAG_MIN,PDRYLBDAS_MIN, & - PFDINFTY,XKER_SDRYG ) + CALL LIMA_READ_XKER_SDRYG (KDRYLBDAG,KDRYLBDAS,KND, & + PALPHAG,PNUG,PALPHAS,PNUS,PEGS,PBS,PCG,PDG,PCS,PDS, & + PDRYLBDAG_MAX,PDRYLBDAS_MAX,PDRYLBDAG_MIN,PDRYLBDAS_MIN, & + PFDINFTY,XKER_SDRYG ) WRITE(UNIT=ILUOUT0,FMT='(" Read XKER_SDRYG")') END IF ! @@ -1021,10 +1048,10 @@ ZFDINFTY = 20.0 ! ALLOCATE( XKER_RDRYG(NDRYLBDAG,NDRYLBDAR) ) ! -CALL READ_XKER_RDRYG (KDRYLBDAG,KDRYLBDAR,KND, & - PALPHAG,PNUG,PALPHAR,PNUR,PEGR,PBR,PCG,PDG,PCR,PDR, & - PDRYLBDAG_MAX,PDRYLBDAR_MAX,PDRYLBDAG_MIN,PDRYLBDAR_MIN, & - PFDINFTY ) +CALL LIMA_READ_XKER_RDRYG (KDRYLBDAG,KDRYLBDAR,KND, & + PALPHAG,PNUG,PALPHAR,PNUR,PEGR,PBR,PCG,PDG,PCR,PDR, & + PDRYLBDAG_MAX,PDRYLBDAR_MAX,PDRYLBDAG_MIN,PDRYLBDAR_MIN, & + PFDINFTY ) IF( (KDRYLBDAG/=NDRYLBDAG) .OR. (KDRYLBDAR/=NDRYLBDAR) .OR. (KND/=IND) .OR. & (PALPHAG/=XALPHAG) .OR. (PNUG/=XNUG) .OR. & (PALPHAR/=XALPHAR) .OR. (PNUR/=XNUR) .OR. & @@ -1073,10 +1100,10 @@ IF( (KDRYLBDAG/=NDRYLBDAG) .OR. (KDRYLBDAR/=NDRYLBDAR) .OR. (KND/=IND) .OR. & END DO WRITE(UNIT=ILUOUT0,FMT='("END IF")') ELSE - CALL READ_XKER_RDRYG (KDRYLBDAG,KDRYLBDAR,KND, & - PALPHAG,PNUG,PALPHAR,PNUR,PEGR,PBR,PCG,PDG,PCR,PDR, & - PDRYLBDAG_MAX,PDRYLBDAR_MAX,PDRYLBDAG_MIN,PDRYLBDAR_MIN, & - PFDINFTY,XKER_RDRYG ) + CALL LIMA_READ_XKER_RDRYG (KDRYLBDAG,KDRYLBDAR,KND, & + PALPHAG,PNUG,PALPHAR,PNUR,PEGR,PBR,PCG,PDG,PCR,PDR, & + PDRYLBDAG_MAX,PDRYLBDAR_MAX,PDRYLBDAG_MIN,PDRYLBDAR_MIN, & + PFDINFTY,XKER_RDRYG ) WRITE(UNIT=ILUOUT0,FMT='(" Read XKER_RDRYG")') END IF ! @@ -1138,10 +1165,10 @@ ZFDINFTY = 20.0 ! computing the kernels XKER_SWETH ! IF( .NOT.ALLOCATED(XKER_SWETH) ) ALLOCATE( XKER_SWETH(NWETLBDAH,NWETLBDAS) ) ! -CALL READ_XKER_SWETH (KWETLBDAH,KWETLBDAS,KND, & - PALPHAH,PNUH,PALPHAS,PNUS,PEHS,PBS,PCH,PDH,PCS,PDS, & - PWETLBDAH_MAX,PWETLBDAS_MAX,PWETLBDAH_MIN,PWETLBDAS_MIN, & - PFDINFTY ) +CALL LIMA_READ_XKER_SWETH (KWETLBDAH,KWETLBDAS,KND, & + PALPHAH,PNUH,PALPHAS,PNUS,PEHS,PBS,PCH,PDH,PCS,PDS, & + PWETLBDAH_MAX,PWETLBDAS_MAX,PWETLBDAH_MIN,PWETLBDAS_MIN, & + PFDINFTY ) IF( (KWETLBDAH/=NWETLBDAH) .OR. (KWETLBDAS/=NWETLBDAS) .OR. (KND/=IND) .OR. & (PALPHAH/=XALPHAH) .OR. (PNUH/=XNUH) .OR. & (PALPHAS/=XALPHAS) .OR. (PNUS/=XNUS) .OR. & @@ -1190,10 +1217,10 @@ IF( (KWETLBDAH/=NWETLBDAH) .OR. (KWETLBDAS/=NWETLBDAS) .OR. (KND/=IND) .OR. & END DO WRITE(UNIT=ILUOUT0,FMT='("END IF")') ELSE - CALL READ_XKER_SWETH (KWETLBDAH,KWETLBDAS,KND, & - PALPHAH,PNUH,PALPHAS,PNUS,PEHS,PBS,PCH,PDH,PCS,PDS, & - PWETLBDAH_MAX,PWETLBDAS_MAX,PWETLBDAH_MIN,PWETLBDAS_MIN, & - PFDINFTY,XKER_SWETH ) + CALL LIMA_READ_XKER_SWETH (KWETLBDAH,KWETLBDAS,KND, & + PALPHAH,PNUH,PALPHAS,PNUS,PEHS,PBS,PCH,PDH,PCS,PDS, & + PWETLBDAH_MAX,PWETLBDAS_MAX,PWETLBDAH_MIN,PWETLBDAS_MIN, & + PFDINFTY,XKER_SWETH ) WRITE(UNIT=ILUOUT0,FMT='(" Read XKER_SWETH")') END IF ! @@ -1204,10 +1231,10 @@ ZFDINFTY = 20.0 ! IF( .NOT.ALLOCATED(XKER_GWETH) ) ALLOCATE( XKER_GWETH(NWETLBDAH,NWETLBDAG) ) ! -CALL READ_XKER_GWETH (KWETLBDAH,KWETLBDAG,KND, & - PALPHAH,PNUH,PALPHAG,PNUG,PEHG,PBG,PCH,PDH,PCG,PDG, & - PWETLBDAH_MAX,PWETLBDAG_MAX,PWETLBDAH_MIN,PWETLBDAG_MIN, & - PFDINFTY ) +CALL LIMA_READ_XKER_GWETH (KWETLBDAH,KWETLBDAG,KND, & + PALPHAH,PNUH,PALPHAG,PNUG,PEHG,PBG,PCH,PDH,PCG,PDG, & + PWETLBDAH_MAX,PWETLBDAG_MAX,PWETLBDAH_MIN,PWETLBDAG_MIN, & + PFDINFTY ) IF( (KWETLBDAH/=NWETLBDAH) .OR. (KWETLBDAG/=NWETLBDAG) .OR. (KND/=IND) .OR. & (PALPHAH/=XALPHAH) .OR. (PNUH/=XNUH) .OR. & (PALPHAG/=XALPHAG) .OR. (PNUG/=XNUG) .OR. & @@ -1256,10 +1283,10 @@ IF( (KWETLBDAH/=NWETLBDAH) .OR. (KWETLBDAG/=NWETLBDAG) .OR. (KND/=IND) .OR. & END DO WRITE(UNIT=ILUOUT0,FMT='("END IF")') ELSE - CALL READ_XKER_GWETH (KWETLBDAH,KWETLBDAG,KND, & - PALPHAH,PNUH,PALPHAG,PNUG,PEHG,PBG,PCH,PDH,PCG,PDG, & - PWETLBDAH_MAX,PWETLBDAG_MAX,PWETLBDAH_MIN,PWETLBDAG_MIN, & - PFDINFTY,XKER_GWETH ) + CALL LIMA_READ_XKER_GWETH (KWETLBDAH,KWETLBDAG,KND, & + PALPHAH,PNUH,PALPHAG,PNUG,PEHG,PBG,PCH,PDH,PCG,PDG, & + PWETLBDAH_MAX,PWETLBDAG_MAX,PWETLBDAH_MIN,PWETLBDAG_MIN, & + PFDINFTY,XKER_GWETH ) WRITE(UNIT=ILUOUT0,FMT='(" Read XKER_GWETH")') END IF ! diff --git a/src/MNH/ini_lima_warm.f90 b/src/MNH/ini_lima_warm.f90 index f59ec111c2b19a5e2ca9b19066fdf52b8f5ff5e9..b369cbcecd27510bb36d92345174f8b23beec404 100644 --- a/src/MNH/ini_lima_warm.f90 +++ b/src/MNH/ini_lima_warm.f90 @@ -2,7 +2,6 @@ !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. -!----------------------------------------------------------------- ! ######################### MODULE MODI_INI_LIMA_WARM ! ######################### @@ -191,6 +190,17 @@ XFSEDCC = XCC*GAMMA_X0D(XNUC+XDC/XALPHAC)/GAMMA_X0D(XNUC)* & (ZRHO00)**XCEXVT ! +XLB(2) = XLBC +XLBEX(2) = XLBEXC +XD(2) = XDC +XFSEDR(2) = XFSEDRC +XFSEDC(2) = XFSEDCC +! +XLB(3) = XLBR +XLBEX(3) = XLBEXR +XD(3) = XDR +XFSEDR(3) = XFSEDRR +XFSEDC(3) = XFSEDCR ! !------------------------------------------------------------------------------ ! diff --git a/src/MNH/lima.f90 b/src/MNH/lima.f90 new file mode 100644 index 0000000000000000000000000000000000000000..2215459b71ebddec157dffca265e4067b8b55486 --- /dev/null +++ b/src/MNH/lima.f90 @@ -0,0 +1,1710 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ######spl +MODULE MODI_LIMA +! #################### +! +INTERFACE +! +SUBROUTINE LIMA ( PTSTEP, TPFILE, OCLOSE_OUT, & + PRHODREF, PEXNREF, PZZ, & + PRHODJ, PPABSM, PPABST, & + NCCN, NIFN, NIMM, & + PTHM, PTHT, PRT, PSVT, PW_NU, & + PTHS, PRS, PSVS, & + PINPRC, PINDEP, PINPRR, PINPRI, PINPRS, PINPRG, PINPRH, & + PEVAP3D ) +! +USE MODD_IO_ll, ONLY: TFILEDATA +! +REAL, INTENT(IN) :: PTSTEP ! Time step +TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file +LOGICAL, INTENT(IN) :: OCLOSE_OUT ! Conditional closure of output +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Layer thikness (m) +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODJ ! Dry density * Jacobian +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABSM ! absolute pressure at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! absolute pressure at t +! +INTEGER, INTENT(IN) :: NCCN ! for array size declarations +INTEGER, INTENT(IN) :: NIFN ! for array size declarations +INTEGER, INTENT(IN) :: NIMM ! for array size declarations +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHM ! Theta at time t-dt +REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT ! Theta at time t +REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRT ! Mixing ratios at time t +REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSVT ! Concentrations at time t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PW_NU ! w for CCN activation +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHS ! Theta source +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PRS ! Mixing ratios sources +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVS ! Concentrations sources +! +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRC ! Cloud instant precip +REAL, DIMENSION(:,:), INTENT(OUT) :: PINDEP ! Cloud droplets deposition +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRR ! Rain instant precip +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRI ! Rain instant precip +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRS ! Snow instant precip +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRG ! Graupel instant precip +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRH ! Rain instant precip +REAL, DIMENSION(:,:,:), INTENT(OUT) :: PEVAP3D ! Rain evap profile +! +END SUBROUTINE LIMA +END INTERFACE +END MODULE MODI_LIMA +! +! +! ######spl + SUBROUTINE LIMA ( PTSTEP, TPFILE, OCLOSE_OUT, & + PRHODREF, PEXNREF, PZZ, & + PRHODJ, PPABSM, PPABST, & + NCCN, NIFN, NIMM, & + PTHM, PTHT, PRT, PSVT, PW_NU, & + PTHS, PRS, PSVS, & + PINPRC, PINDEP, PINPRR, PINPRI, PINPRS, PINPRG, PINPRH, & + PEVAP3D ) +! ###################################################################### +! +!! PURPOSE +!! ------- +!! Compute explicit microphysical sources using the 2-moment scheme LIMA +!! using the time-splitting method +!! +!! REFERENCE +!! --------- +!! Vié et al. (GMD, 2016) +!! Meso-NH scientific documentation +!! +!! AUTHOR +!! ------ +!! S. Riette * CNRM * +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!! +!! +!* 0. DECLARATIONS +! ------------ +USE MODD_IO_ll, ONLY: TFILEDATA +USE MODD_LUNIT_n, ONLY: TLUOUT +USE MODD_CLOUDPAR_n, ONLY : NSPLITR, NSPLITG +USE MODD_PARAMETERS, ONLY : JPHEXT, JPVEXT +USE MODD_PARAM_LIMA, ONLY : LCOLD, LRAIN, LWARM, NMOD_CCN, NMOD_IFN, NMOD_IMM, LHHONI, & + LACTIT, LFEEDBACKT, NMAXITER, XMRSTEP, XTSTEP_TS, & + LSEDC, LSEDI, XRTMIN, XCTMIN, LDEPOC, XVDEPOC, & + LHAIL, LSNOW +USE MODD_PARAM_LIMA_WARM,ONLY : XLBC, XLBEXC, XAC, XBC, XAR, XBR +USE MODD_PARAM_LIMA_COLD,ONLY : XAI, XBI +USE MODD_BUDGET, ONLY : LBU_ENABLE, LBUDGET_TH, LBUDGET_RV, LBUDGET_RC, LBUDGET_RR, & + LBUDGET_RI, LBUDGET_RS, LBUDGET_RG, LBUDGET_RH, LBUDGET_SV +USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NR, NSV_LIMA_CCN_FREE, NSV_LIMA_CCN_ACTI, & + NSV_LIMA_SCAVMASS, NSV_LIMA_NI, NSV_LIMA_IFN_FREE, & + NSV_LIMA_IFN_NUCL, NSV_LIMA_IMM_NUCL, NSV_LIMA_HOM_HAZE +USE MODD_CST, ONLY : XCI, XCL, XCPD, XCPV, XLSTT, XLVTT, XTT, XRHOLW, XP00, XRD +! +USE MODI_BUDGET +USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV +USE MODI_LIMA_SEDIMENTATION +USE MODI_LIMA_NUCLEATION_PROCS +USE MODI_LIMA_INST_PROCS +USE MODI_LIMA_TENDENCIES +USE MODI_LIMA_DROPS_TO_DROPLETS_CONV +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP ! Time step +TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file +LOGICAL, INTENT(IN) :: OCLOSE_OUT ! Conditional closure of output +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Layer thikness (m) +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODJ ! Dry density * Jacobian +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABSM ! absolute pressure at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! absolute pressure at t +! +INTEGER, INTENT(IN) :: NCCN ! for array size declarations +INTEGER, INTENT(IN) :: NIFN ! for array size declarations +INTEGER, INTENT(IN) :: NIMM ! for array size declarations +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHM ! Theta at time t-dt +REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT ! Theta at time t +REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRT ! Mixing ratios at time t +REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSVT ! Concentrations at time t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PW_NU ! w for CCN activation +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHS ! Theta source +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PRS ! Mixing ratios sources +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVS ! Concentrations sources +! +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRC ! Cloud instant precip +REAL, DIMENSION(:,:), INTENT(OUT) :: PINDEP ! Cloud droplets deposition +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRR ! Rain instant precip +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRI ! Rain instant precip +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRS ! Snow instant precip +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRG ! Graupel instant precip +REAL, DIMENSION(:,:), INTENT(OUT) :: PINPRH ! Rain instant precip +REAL, DIMENSION(:,:,:), INTENT(OUT) :: PEVAP3D ! Rain evap profile +! +!* 0.2 Declarations of local variables : +! +! +! Prognostic variables and sources +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: ZTHT, ZRVT, ZRCT, ZRRT, ZRIT, ZRST, ZRGT, ZRHT +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: ZCCT, ZCRT, ZCIT +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: ZTHS, ZRVS, ZRCS, ZRRS, ZRIS, ZRSS, ZRGS, ZRHS +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: ZCCS, ZCRS, ZCIS +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3),NCCN) :: ZCCNFT, ZCCNAT +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3),NCCN) :: ZCCNFS, ZCCNAS +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3),NIFN) :: ZIFNFT, ZIFNNT +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3),NIFN) :: ZIFNFS, ZIFNNS +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3),NIMM) :: ZIMMNT +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3),NIMM) :: ZIMMNS +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: ZHOMFT +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: ZHOMFS + +! +! Other 3D thermodynamical variables +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: ZEXN, ZT, ZTM + +! +! Packed prognostic & thermo variables +REAL, DIMENSION(:), ALLOCATABLE :: & + ZP1D, ZRHODREF1D, ZEXNREF1D, ZEXN1D, & + ZTHT1D, & + ZRVT1D, ZRCT1D, ZRRT1D, ZRIT1D, ZRST1D, ZRGT1D, ZRHT1D, & + ZCCT1D, ZCRT1D, ZCIT1D, & + ZEVAP1D +REAL, DIMENSION(:,:), ALLOCATABLE :: ZIFNN1D + +! +! for each process & species inside the loop, we need 1D packed variables to store instant tendencies for hydrometeors +REAL, DIMENSION(:), ALLOCATABLE :: & +! mixing ratio & concentration changes by instantaneous processes (kg/kg and #/kg) : + Z_CR_BRKU, & ! spontaneous break up of drops (BRKU) : Nr + Z_TH_HONR, Z_RR_HONR, Z_CR_HONR, & ! rain drops homogeneous freezing (HONR) : rr, Nr, rg=-rr, th + Z_TH_IMLT, Z_RC_IMLT, Z_CC_IMLT, & ! ice melting (IMLT) : rc, Nc, ri=-rc, Ni=-Nc, th, IFNF, IFNA +! mixing ratio & concentration tendencies by continuous processes (kg/kg/s and #/kg/s) : + Z_TH_HONC, Z_RC_HONC, Z_CC_HONC, & ! droplets homogeneous freezing (HONC) : rc, Nc, ri=-rc, Ni=-Nc, th + Z_CC_SELF, & ! self collection of droplets (SELF) : Nc + Z_RC_AUTO, Z_CC_AUTO, Z_CR_AUTO, & ! autoconversion of cloud droplets (AUTO) : rc, Nc, rr=-rc, Nr + Z_RC_ACCR, Z_CC_ACCR, & ! accretion of droplets by rain drops (ACCR) : rc, Nc, rr=-rr + Z_CR_SCBU, & ! self collectio break up of drops (SCBU) : Nr + Z_TH_EVAP, Z_RC_EVAP, Z_CC_EVAP, Z_RR_EVAP, Z_CR_EVAP, & ! evaporation of rain drops (EVAP) : rv=-rr-rc, rc, Nc, rr, Nr, th + Z_RI_CNVI, Z_CI_CNVI, & ! conversion snow -> ice (CNVI) : ri, Ni, rs=-ri + Z_TH_DEPS, Z_RS_DEPS, & ! deposition of vapor on snow (DEPS) : rv=-rs, rs, th + Z_RI_CNVS, Z_CI_CNVS, & ! conversion ice -> snow (CNVS) : ri, Ni, rs=-ri + Z_RI_AGGS, Z_CI_AGGS, & ! aggregation of ice on snow (AGGS) : ri, Ni, rs=-ri + Z_TH_DEPG, Z_RG_DEPG, & ! deposition of vapor on graupel (DEPG) : rv=-rg, rg, th + Z_TH_BERFI, Z_RC_BERFI, & ! Bergeron (BERFI) : rc, ri=-rc, th + Z_TH_RIM, Z_RC_RIM, Z_CC_RIM, Z_RS_RIM, Z_RG_RIM, & ! cloud droplet riming (RIM) : rc, Nc, rs, rg, th + Z_RI_HMS, Z_CI_HMS, Z_RS_HMS, & ! hallett mossop snow (HMS) : ri, Ni, rs + Z_TH_ACC, Z_RR_ACC, Z_CR_ACC, Z_RS_ACC, Z_RG_ACC, & ! rain accretion on aggregates (ACC) : rr, Nr, rs, rg, th + Z_RS_CMEL, & ! conversion-melting (CMEL) : rs, rg=-rs + Z_TH_CFRZ, Z_RR_CFRZ, Z_CR_CFRZ, Z_RI_CFRZ, Z_CI_CFRZ, & ! rain freezing (CFRZ) : rr, Nr, ri, Ni, rg=-rr-ri, th + Z_TH_WETG, Z_RC_WETG, Z_CC_WETG, Z_RR_WETG, Z_CR_WETG, & ! wet growth of graupel (WETG) : rc, NC, rr, Nr, ri, Ni, rs, rg, rh, th + Z_RI_WETG, Z_CI_WETG, Z_RS_WETG, Z_RG_WETG, Z_RH_WETG, & ! wet growth of graupel (WETG) : rc, NC, rr, Nr, ri, Ni, rs, rg, rh, th + Z_TH_DRYG, Z_RC_DRYG, Z_CC_DRYG, Z_RR_DRYG, Z_CR_DRYG, & ! dry growth of graupel (DRYG) : rc, Nc, rr, Nr, ri, Ni, rs, rg, th + Z_RI_DRYG, Z_CI_DRYG, Z_RS_DRYG, Z_RG_DRYG, & ! dry growth of graupel (DRYG) : rc, Nc, rr, Nr, ri, Ni, rs, rg, th + Z_RI_HMG, Z_CI_HMG, Z_RG_HMG, & ! hallett mossop graupel (HMG) : ri, Ni, rg + Z_TH_GMLT, Z_RR_GMLT, Z_CR_GMLT, & ! graupel melting (GMLT) : rr, Nr, rg=-rr, th + Z_RC_WETH, Z_CC_WETH, Z_RR_WETH, Z_CR_WETH, & ! wet growth of hail (WETH) : rc, Nc, rr, Nr, ri, Ni, rs, rg, rh, th + Z_RI_WETH, Z_CI_WETH, Z_RS_WETH, Z_RG_WETH, Z_RH_WETH, & ! wet growth of hail (WETH) : rc, Nc, rr, Nr, ri, Ni, rs, rg, rh, th + Z_RG_COHG, & ! conversion of hail into graupel (COHG) : rg, rh + Z_RR_HMLT, Z_CR_HMLT ! hail melting (HMLT) : rr, Nr, rh=-rr, th +! +! for the conversion from rain to cloud, we need a 3D variable instead of a 1D packed variable +REAL, DIMENSION(SIZE(PTHT,1),SIZE(PTHT,2),SIZE(PTHT,3)) :: & + Z_RR_CVRC, Z_CR_CVRC ! conversion of rain into cloud droplets (CVRC) + +! +! Packed variables for total tendencies +REAL, DIMENSION(:), ALLOCATABLE :: & + ZA_TH, ZA_RV, ZA_RC, ZA_CC, ZA_RR, ZA_CR, ZA_RI, ZA_CI, ZA_RS, ZA_RG, ZA_RH, & ! ZA = continuous tendencies (kg/kg/s = S variable) + ZB_TH, ZB_RV, ZB_RC, ZB_CC, ZB_RR, ZB_CR, ZB_RI, ZB_CI, ZB_RS, ZB_RG, ZB_RH ! ZB = instant mixing ratio change (kg/kg = T variable) +REAL, DIMENSION(:,:), ALLOCATABLE :: ZB_IFNN + +! +! for each process & species, we need 3D variables to store total mmr and conc change (kg/kg and #/kg and theta) +REAL, DIMENSION(SIZE(PTHT,1),SIZE(PTHT,2),SIZE(PTHT,3)) :: & +! instantaneous processes : + ZTOT_CR_BRKU, & ! spontaneous break up of drops (BRKU) + ZTOT_TH_HONR, ZTOT_RR_HONR, ZTOT_CR_HONR, & ! rain drops homogeneous freezing (HONR) + ZTOT_TH_IMLT, ZTOT_RC_IMLT, ZTOT_CC_IMLT, & ! ice melting (IMLT) +! continuous processes : + ZTOT_TH_HONC, ZTOT_RC_HONC, ZTOT_CC_HONC, & ! droplets homogeneous freezing (HONC) + ZTOT_CC_SELF, & ! self collection of droplets (SELF) + ZTOT_RC_AUTO, ZTOT_CC_AUTO, ZTOT_CR_AUTO, & ! autoconversion of cloud droplets (AUTO) + ZTOT_RC_ACCR, ZTOT_CC_ACCR, & ! accretion of droplets by rain drops (ACCR) + ZTOT_CR_SCBU, & ! self collectio break up of drops (SCBU) + ZTOT_TH_EVAP, ZTOT_RC_EVAP, ZTOT_CC_EVAP, ZTOT_RR_EVAP, ZTOT_CR_EVAP, & ! evaporation of rain drops (EVAP) + ZTOT_RI_CNVI, ZTOT_CI_CNVI, & ! conversion snow -> ice (CNVI) + ZTOT_TH_DEPS, ZTOT_RS_DEPS, & ! deposition of vapor on snow (DEPS) + ZTOT_RI_CNVS, ZTOT_CI_CNVS, & ! conversion ice -> snow (CNVS) + ZTOT_RI_AGGS, ZTOT_CI_AGGS, & ! aggregation of ice on snow (AGGS) + ZTOT_TH_DEPG, ZTOT_RG_DEPG, & ! deposition of vapor on graupel (DEPG) + ZTOT_TH_BERFI, ZTOT_RC_BERFI, & ! Bergeron (BERFI) + ZTOT_TH_RIM, ZTOT_RC_RIM, ZTOT_CC_RIM, ZTOT_RS_RIM, ZTOT_RG_RIM, & ! cloud droplet riming (RIM) + ZTOT_RI_HMS, ZTOT_CI_HMS, ZTOT_RS_HMS, & ! hallett mossop snow (HMS) + ZTOT_TH_ACC, ZTOT_RR_ACC, ZTOT_CR_ACC, ZTOT_RS_ACC, ZTOT_RG_ACC, & ! rain accretion on aggregates (ACC) + ZTOT_RS_CMEL, & ! conversion-melting (CMEL) + ZTOT_TH_CFRZ, ZTOT_RR_CFRZ, ZTOT_CR_CFRZ, ZTOT_RI_CFRZ, ZTOT_CI_CFRZ, & ! rain freezing (CFRZ) + ZTOT_TH_WETG, ZTOT_RC_WETG, ZTOT_CC_WETG, ZTOT_RR_WETG, ZTOT_CR_WETG, & ! wet growth of graupel (WETG) + ZTOT_RI_WETG, ZTOT_CI_WETG, ZTOT_RS_WETG, ZTOT_RG_WETG, ZTOT_RH_WETG, & ! wet growth of graupel (WETG) + ZTOT_TH_DRYG, ZTOT_RC_DRYG, ZTOT_CC_DRYG, ZTOT_RR_DRYG, ZTOT_CR_DRYG, & ! dry growth of graupel (DRYG) + ZTOT_RI_DRYG, ZTOT_CI_DRYG, ZTOT_RS_DRYG, ZTOT_RG_DRYG, & ! dry growth of graupel (DRYG) + ZTOT_RI_HMG, ZTOT_CI_HMG, ZTOT_RG_HMG, & ! hallett mossop graupel (HMG) + ZTOT_TH_GMLT, ZTOT_RR_GMLT, ZTOT_CR_GMLT, & ! graupel melting (GMLT) + ZTOT_RC_WETH, ZTOT_CC_WETH, ZTOT_RR_WETH, ZTOT_CR_WETH, & ! wet growth of hail (WETH) + ZTOT_RI_WETH, ZTOT_CI_WETH, ZTOT_RS_WETH, ZTOT_RG_WETH, ZTOT_RH_WETH, & ! wet growth of hail (WETH) + ZTOT_RG_COHG, & ! conversion of hail into graupel (COHG) + ZTOT_RR_HMLT, ZTOT_CR_HMLT, & ! hail melting (HMLT) + ZTOT_RR_CVRC, ZTOT_CR_CVRC ! conversion of rain into cloud droplets if diameter too small + +! +!For mixing-ratio splitting +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: Z0RVT, Z0RCT, Z0RRT, Z0RIT, Z0RST, Z0RGT, Z0RHT +REAL, DIMENSION(:), ALLOCATABLE :: Z0RVT1D, Z0RCT1D, Z0RRT1D, Z0RIT1D, Z0RST1D, Z0RGT1D, Z0RHT1D + +! +! Loop control variables +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: ZTIME, ZTIME_LASTCALL, IITER +REAL, DIMENSION(:), ALLOCATABLE :: ZTIME1D, ZTIME_LASTCALL1D, IITER1D, ZMAXTIME, ZTIME_THRESHOLD +LOGICAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: LLCOMPUTE +LOGICAL, DIMENSION(:), ALLOCATABLE :: LLCOMPUTE1D +REAL :: ZTSTEP +INTEGER :: INB_ITER_MAX + + +! +! Various parameters +! domain size and levels (AROME compatibility) +INTEGER :: KRR +INTEGER :: IIB, IIE, IIT, IJB, IJE, IJT, IKB, IKE, IKT, IKTB, IKTE +INTEGER :: KKA, KKU, KKL +! loops and packing +INTEGER :: II, IPACK +INTEGER, DIMENSION(:), ALLOCATABLE :: I1, I2, I3 +! Inverse ov PTSTEP +REAL :: ZINV_TSTEP +! Work arrays +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: ZW3D +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2)) :: ZW2D +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: ZRT_SUM ! Total condensed water mr +REAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3)) :: ZCPT ! Total condensed water mr +LOGICAL, DIMENSION(SIZE(PRT,1),SIZE(PRT,2)) :: GDEP +! +!------------------------------------------------------------------------------- +! +!* 0. Init +! ---- +! +ZTHS(:,:,:) = PTHS(:,:,:) +ZTHT(:,:,:) = PTHS(:,:,:) * PTSTEP +ZRVT(:,:,:) = 0. +ZRVS(:,:,:) = 0. +ZRCT(:,:,:) = 0. +ZRCS(:,:,:) = 0. +ZRRT(:,:,:) = 0. +ZRRS(:,:,:) = 0. +ZRIT(:,:,:) = 0. +ZRIS(:,:,:) = 0. +ZRST(:,:,:) = 0. +ZRSS(:,:,:) = 0. +ZRGT(:,:,:) = 0. +ZRGS(:,:,:) = 0. +ZRHT(:,:,:) = 0. +ZRHS(:,:,:) = 0. +ZRT_SUM(:,:,:) = 0. +ZCCT(:,:,:) = 0. +ZCCS(:,:,:) = 0. +ZCRT(:,:,:) = 0. +ZCRS(:,:,:) = 0. +ZCIT(:,:,:) = 0. +ZCIS(:,:,:) = 0. +ZCCNFT(:,:,:,:) = 0. +ZCCNAT(:,:,:,:) = 0. +ZCCNFS(:,:,:,:) = 0. +ZCCNAS(:,:,:,:) = 0. +ZIFNFT(:,:,:,:) = 0. +ZIFNNT(:,:,:,:) = 0. +ZIFNFS(:,:,:,:) = 0. +ZIFNNS(:,:,:,:) = 0. +ZIMMNT(:,:,:,:) = 0. +ZIMMNS(:,:,:,:) = 0. +ZHOMFT(:,:,:) = 0. +ZHOMFS(:,:,:) = 0. + +IF(LBU_ENABLE) THEN + ZTOT_CR_BRKU(:,:,:) = 0. + ZTOT_TH_HONR(:,:,:) = 0. + ZTOT_RR_HONR(:,:,:) = 0. + ZTOT_CR_HONR(:,:,:) = 0. + ZTOT_TH_IMLT(:,:,:) = 0. + ZTOT_RC_IMLT(:,:,:) = 0. + ZTOT_CC_IMLT(:,:,:) = 0. + ZTOT_TH_HONC(:,:,:) = 0. + ZTOT_RC_HONC(:,:,:) = 0. + ZTOT_CC_HONC(:,:,:) = 0. + ZTOT_CC_SELF(:,:,:) = 0. + ZTOT_RC_AUTO(:,:,:) = 0. + ZTOT_CC_AUTO(:,:,:) = 0. + ZTOT_CR_AUTO(:,:,:) = 0. + ZTOT_RC_ACCR(:,:,:) = 0. + ZTOT_CC_ACCR(:,:,:) = 0. + ZTOT_CR_SCBU(:,:,:) = 0. + ZTOT_TH_EVAP(:,:,:) = 0. + ZTOT_RC_EVAP(:,:,:) = 0. + ZTOT_CC_EVAP(:,:,:) = 0. + ZTOT_RR_EVAP(:,:,:) = 0. + ZTOT_CR_EVAP(:,:,:) = 0. + ZTOT_RI_CNVI(:,:,:) = 0. + ZTOT_CI_CNVI(:,:,:) = 0. + ZTOT_TH_DEPS(:,:,:) = 0. + ZTOT_RS_DEPS(:,:,:) = 0. + ZTOT_RI_CNVS(:,:,:) = 0. + ZTOT_CI_CNVS(:,:,:) = 0. + ZTOT_RI_AGGS(:,:,:) = 0. + ZTOT_CI_AGGS(:,:,:) = 0. + ZTOT_TH_DEPG(:,:,:) = 0. + ZTOT_RG_DEPG(:,:,:) = 0. + ZTOT_TH_BERFI(:,:,:) = 0. + ZTOT_RC_BERFI(:,:,:) = 0. + ZTOT_TH_RIM(:,:,:) = 0. + ZTOT_RC_RIM(:,:,:) = 0. + ZTOT_CC_RIM(:,:,:) = 0. + ZTOT_RS_RIM(:,:,:) = 0. + ZTOT_RG_RIM(:,:,:) = 0. + ZTOT_RI_HMS(:,:,:) = 0. + ZTOT_CI_HMS(:,:,:) = 0. + ZTOT_RS_HMS(:,:,:) = 0. + ZTOT_TH_ACC(:,:,:) = 0. + ZTOT_RR_ACC(:,:,:) = 0. + ZTOT_CR_ACC(:,:,:) = 0. + ZTOT_RS_ACC(:,:,:) = 0. + ZTOT_RG_ACC(:,:,:) = 0. + ZTOT_RS_CMEL(:,:,:) = 0. + ZTOT_TH_CFRZ(:,:,:) = 0. + ZTOT_RR_CFRZ(:,:,:) = 0. + ZTOT_CR_CFRZ(:,:,:) = 0. + ZTOT_RI_CFRZ(:,:,:) = 0. + ZTOT_CI_CFRZ(:,:,:) = 0. + ZTOT_TH_WETG(:,:,:) = 0. + ZTOT_RC_WETG(:,:,:) = 0. + ZTOT_CC_WETG(:,:,:) = 0. + ZTOT_RR_WETG(:,:,:) = 0. + ZTOT_CR_WETG(:,:,:) = 0. + ZTOT_RI_WETG(:,:,:) = 0. + ZTOT_CI_WETG(:,:,:) = 0. + ZTOT_RS_WETG(:,:,:) = 0. + ZTOT_RG_WETG(:,:,:) = 0. + ZTOT_RH_WETG(:,:,:) = 0. + ZTOT_TH_DRYG(:,:,:) = 0. + ZTOT_RC_DRYG(:,:,:) = 0. + ZTOT_CC_DRYG(:,:,:) = 0. + ZTOT_RR_DRYG(:,:,:) = 0. + ZTOT_CR_DRYG(:,:,:) = 0. + ZTOT_RI_DRYG(:,:,:) = 0. + ZTOT_CI_DRYG(:,:,:) = 0. + ZTOT_RS_DRYG(:,:,:) = 0. + ZTOT_RG_DRYG(:,:,:) = 0. + ZTOT_RI_HMG(:,:,:) = 0. + ZTOT_CI_HMG(:,:,:) = 0. + ZTOT_RG_HMG(:,:,:) = 0. + ZTOT_TH_GMLT(:,:,:) = 0. + ZTOT_RR_GMLT(:,:,:) = 0. + ZTOT_CR_GMLT(:,:,:) = 0. + ZTOT_RC_WETH(:,:,:) = 0. + ZTOT_CC_WETH(:,:,:) = 0. + ZTOT_RR_WETH(:,:,:) = 0. + ZTOT_CR_WETH(:,:,:) = 0. + ZTOT_RI_WETH(:,:,:) = 0. + ZTOT_CI_WETH(:,:,:) = 0. + ZTOT_RS_WETH(:,:,:) = 0. + ZTOT_RG_WETH(:,:,:) = 0. + ZTOT_RH_WETH(:,:,:) = 0. + ZTOT_RG_COHG(:,:,:) = 0. + ZTOT_RR_HMLT(:,:,:) = 0. + ZTOT_CR_HMLT(:,:,:) = 0. + ZTOT_RR_CVRC(:,:,:) = 0. + ZTOT_CR_CVRC(:,:,:) = 0. +END IF +! +! Initial values computed as source * PTSTEP +! +! Mixing ratios +! +KRR=SIZE(PRT,4) +ZRVT(:,:,:) = PRS(:,:,:,1) * PTSTEP +ZRVS(:,:,:) = PRS(:,:,:,1) +IF ( KRR .GE. 2 ) ZRCT(:,:,:) = PRS(:,:,:,2) * PTSTEP +IF ( KRR .GE. 2 ) ZRCS(:,:,:) = PRS(:,:,:,2) +IF ( KRR .GE. 3 ) ZRRT(:,:,:) = PRS(:,:,:,3) * PTSTEP +IF ( KRR .GE. 3 ) ZRRS(:,:,:) = PRS(:,:,:,3) +IF ( KRR .GE. 4 ) ZRIT(:,:,:) = PRS(:,:,:,4) * PTSTEP +IF ( KRR .GE. 4 ) ZRIS(:,:,:) = PRS(:,:,:,4) +IF ( KRR .GE. 5 ) ZRST(:,:,:) = PRS(:,:,:,5) * PTSTEP +IF ( KRR .GE. 5 ) ZRSS(:,:,:) = PRS(:,:,:,5) +IF ( KRR .GE. 6 ) ZRGT(:,:,:) = PRS(:,:,:,6) * PTSTEP +IF ( KRR .GE. 6 ) ZRGS(:,:,:) = PRS(:,:,:,6) +IF ( KRR .GE. 7 ) ZRHT(:,:,:) = PRS(:,:,:,7) * PTSTEP +IF ( KRR .GE. 7 ) ZRHS(:,:,:) = PRS(:,:,:,7) +! +! Concentrations +! +IF ( LWARM ) ZCCT(:,:,:) = PSVS(:,:,:,NSV_LIMA_NC) * PTSTEP +IF ( LWARM ) ZCCS(:,:,:) = PSVS(:,:,:,NSV_LIMA_NC) +IF ( LWARM .AND. LRAIN ) ZCRT(:,:,:) = PSVS(:,:,:,NSV_LIMA_NR) * PTSTEP +IF ( LWARM .AND. LRAIN ) ZCRS(:,:,:) = PSVS(:,:,:,NSV_LIMA_NR) +IF ( LCOLD ) ZCIT(:,:,:) = PSVS(:,:,:,NSV_LIMA_NI) * PTSTEP +IF ( LCOLD ) ZCIS(:,:,:) = PSVS(:,:,:,NSV_LIMA_NI) +! +IF ( NMOD_CCN .GE. 1 ) ZCCNFT(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_CCN_FREE:NSV_LIMA_CCN_FREE+NMOD_CCN-1) * PTSTEP +IF ( NMOD_CCN .GE. 1 ) ZCCNAT(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_CCN_ACTI:NSV_LIMA_CCN_ACTI+NMOD_CCN-1) * PTSTEP +IF ( NMOD_CCN .GE. 1 ) ZCCNFS(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_CCN_FREE:NSV_LIMA_CCN_FREE+NMOD_CCN-1) +IF ( NMOD_CCN .GE. 1 ) ZCCNAS(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_CCN_ACTI:NSV_LIMA_CCN_ACTI+NMOD_CCN-1) +! +IF ( NMOD_IFN .GE. 1 ) ZIFNFT(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_IFN_FREE:NSV_LIMA_IFN_FREE+NMOD_IFN-1) * PTSTEP +IF ( NMOD_IFN .GE. 1 ) ZIFNNT(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_IFN_NUCL:NSV_LIMA_IFN_NUCL+NMOD_IFN-1) * PTSTEP +IF ( NMOD_IFN .GE. 1 ) ZIFNFS(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_IFN_FREE:NSV_LIMA_IFN_FREE+NMOD_IFN-1) +IF ( NMOD_IFN .GE. 1 ) ZIFNNS(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_IFN_NUCL:NSV_LIMA_IFN_NUCL+NMOD_IFN-1) +! +IF ( NMOD_IMM .GE. 1 ) ZIMMNT(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_IMM_NUCL:NSV_LIMA_IMM_NUCL+NMOD_IMM-1) * PTSTEP +IF ( NMOD_IMM .GE. 1 ) ZIMMNS(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_IMM_NUCL:NSV_LIMA_IMM_NUCL+NMOD_IMM-1) +! +IF ( LCOLD .AND. LHHONI ) ZHOMFT(:,:,:) = PSVS(:,:,:,NSV_LIMA_HOM_HAZE) * PTSTEP +IF ( LCOLD .AND. LHHONI ) ZHOMFS(:,:,:) = PSVS(:,:,:,NSV_LIMA_HOM_HAZE) +! +ZINV_TSTEP = 1./PTSTEP +ZEXN(:,:,:) = PEXNREF(:,:,:) +ZT(:,:,:) = ZTHT(:,:,:) * ZEXN(:,:,:) +! +!------------------------------------------------------------------------------- +! +!* 0. Check mean diameter for cloud, rain and ice +! -------------------------------------------- +IF (LWARM .AND. LRAIN) THEN + WHERE( ZRCT>XRTMIN(2) .AND. ZCCT>XCTMIN(2) .AND. ZRCT>XAC*ZCCT*(100.E-6)**XBC ) + ZRRT=ZRRT+ZRCT + ZRRS=ZRRS+ZRCS + ZCRT=ZCRT+ZCCT + ZCRS=ZCRS+ZCCS + ZRCT=0. + ZCCT=0. + ZRCS=0. + ZCCS=0. + END WHERE +END IF +! +IF (LWARM .AND. LRAIN) THEN + WHERE( ZRRT>XRTMIN(3) .AND. ZCRT>XCTMIN(3) .AND. ZRRT<XAR*ZCRT*(60.E-6)**XBR ) + ZRCT=ZRCT+ZRRT + ZRCS=ZRCS+ZRRS + ZCCT=ZCCT+ZCRT + ZCCS=ZCCS+ZCRS + ZRRT=0. + ZCRT=0. + ZRRS=0. + ZCRS=0. + END WHERE +END IF +! +IF (LCOLD .AND. LSNOW) THEN + WHERE( ZRIT>XRTMIN(4) .AND. ZCIT>XCTMIN(4) .AND. ZRIT>XAI*ZCIT*(250.E-6)**XBI ) + ZRST=ZRST+ZRIT + ZRSS=ZRSS+ZRIS + ZRIT=0. + ZCIT=0. + ZRIS=0. + ZCIS=0. + END WHERE +END IF +! +IF(LBU_ENABLE) THEN + IF (LBUDGET_RC .AND. LWARM .AND. LRAIN) CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'CORR_BU_RRC') + IF (LBUDGET_RR .AND. LWARM .AND. LRAIN) CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'CORR_BU_RRR') + IF (LBUDGET_RI .AND. LCOLD .AND. LSNOW) CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'CORR_BU_RRI') + IF (LBUDGET_RI .AND. LCOLD .AND. LSNOW) CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:),10 , 'CORR_BU_RRS') + IF (LBUDGET_SV) THEN + IF (LWARM .AND. LRAIN) CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'CORR_BU_RSV') + IF (LWARM .AND. LRAIN) CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'CORR_BU_RSV') + IF (LCOLD .AND. LSNOW) CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'CORR_BU_RSV') + END IF +END IF +!------------------------------------------------------------------------------- +! +!* 1. Sedimentation +! ------------- +! +! +ZRT_SUM = (ZRVS + ZRCS + ZRRS + ZRIS + ZRSS + ZRGS + ZRHS)*PTSTEP +ZCPT = XCPD + (XCPV * ZRVS + XCL * (ZRCS + ZRRS) + XCI * (ZRIS + ZRSS + ZRGS + ZRHS))*PTSTEP +IF (LWARM .AND. LSEDC) CALL LIMA_SEDIMENTATION('L', 2, 2, 1, PTSTEP, PZZ, PRHODREF, PPABST, ZT, ZRT_SUM, ZCPT, ZRCS, ZCCS, PINPRC) +ZRT_SUM = (ZRVS + ZRCS + ZRRS + ZRIS + ZRSS + ZRGS + ZRHS)*PTSTEP +ZCPT = XCPD + (XCPV * ZRVS + XCL * (ZRCS + ZRRS) + XCI * (ZRIS + ZRSS + ZRGS + ZRHS))*PTSTEP +IF (LWARM .AND. LRAIN) CALL LIMA_SEDIMENTATION('L', 2, 3, 1, PTSTEP, PZZ, PRHODREF, PPABST, ZT, ZRT_SUM, ZCPT, ZRRS, ZCRS, PINPRR) +ZRT_SUM = (ZRVS + ZRCS + ZRRS + ZRIS + ZRSS + ZRGS + ZRHS)*PTSTEP +ZCPT = XCPD + (XCPV * ZRVS + XCL * (ZRCS + ZRRS) + XCI * (ZRIS + ZRSS + ZRGS + ZRHS))*PTSTEP +IF (LCOLD .AND. LSEDI) CALL LIMA_SEDIMENTATION('I', 2, 4, 1, PTSTEP, PZZ, PRHODREF, PPABST, ZT, ZRT_SUM, ZCPT, ZRIS, ZCIS, ZW2D) +ZRT_SUM = (ZRVS + ZRCS + ZRRS + ZRIS + ZRSS + ZRGS + ZRHS)*PTSTEP +ZCPT = XCPD + (XCPV * ZRVS + XCL * (ZRCS + ZRRS) + XCI * (ZRIS + ZRSS + ZRGS + ZRHS))*PTSTEP +IF (LCOLD .AND. LSNOW) CALL LIMA_SEDIMENTATION('I', 1, 5, 1, PTSTEP, PZZ, PRHODREF, PPABST, ZT, ZRT_SUM, ZCPT, ZRSS, ZW3D, PINPRS) +ZRT_SUM = (ZRVS + ZRCS + ZRRS + ZRIS + ZRSS + ZRGS + ZRHS)*PTSTEP +ZCPT = XCPD + (XCPV * ZRVS + XCL * (ZRCS + ZRRS) + XCI * (ZRIS + ZRSS + ZRGS + ZRHS))*PTSTEP +IF (LCOLD .AND. LSNOW) CALL LIMA_SEDIMENTATION('I', 1, 6, 1, PTSTEP, PZZ, PRHODREF, PPABST, ZT, ZRT_SUM, ZCPT, ZRGS, ZW3D, PINPRG) +ZRT_SUM = (ZRVS + ZRCS + ZRRS + ZRIS + ZRSS + ZRGS + ZRHS)*PTSTEP +ZCPT = XCPD + (XCPV * ZRVS + XCL * (ZRCS + ZRRS) + XCI * (ZRIS + ZRSS + ZRGS + ZRHS))*PTSTEP +IF (LCOLD .AND. LHAIL) CALL LIMA_SEDIMENTATION('I', 1, 7, 1, PTSTEP, PZZ, PRHODREF, PPABST, ZT, ZRT_SUM, ZCPT, ZRHS, ZW3D, PINPRH) +! +ZTHS(:,:,:) = ZT(:,:,:) / ZEXN(:,:,:) * ZINV_TSTEP +! +! Call budgets +! +IF(LBU_ENABLE) THEN + IF (LBUDGET_TH) CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'SEDI_BU_RTH') + IF (LBUDGET_RC .AND. LWARM .AND. LSEDC) CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'SEDI_BU_RRC') + IF (LBUDGET_RR .AND. LWARM .AND. LRAIN) CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'SEDI_BU_RRR') + IF (LBUDGET_RI .AND. LCOLD .AND. LSEDI) CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'SEDI_BU_RRI') + IF (LBUDGET_RS .AND. LCOLD .AND. LSNOW) CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:), 10 , 'SEDI_BU_RRS') + IF (LBUDGET_RG .AND. LCOLD .AND. LSNOW) CALL BUDGET (ZRGS(:,:,:)*PRHODJ(:,:,:), 11 , 'SEDI_BU_RRG') + IF (LBUDGET_RH .AND. LCOLD .AND. LHAIL) CALL BUDGET (ZRHS(:,:,:)*PRHODJ(:,:,:), 12 , 'SEDI_BU_RRH') + IF (LBUDGET_SV) THEN + IF (LWARM .AND. LSEDC) CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'SEDI_BU_RSV') + IF (LWARM .AND. LRAIN) CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'SEDI_BU_RSV') + IF (LCOLD .AND. LSEDI) CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'SEDI_BU_RSV') + END IF +END IF +! +! 1.bis Deposition at 1st level above ground +! +IF (LWARM .AND. LDEPOC) THEN + PINDEP(:,:)=0. + GDEP(:,:) = .FALSE. + GDEP(:,:) = ZRCS(:,:,2) >0 .AND. ZCCS(:,:,2) >0 + WHERE (GDEP) + ZRCS(:,:,2) = ZRCS(:,:,2) - XVDEPOC * ZRCT(:,:,2) / ( PZZ(:,:,3) - PZZ(:,:,2)) + ZCCS(:,:,2) = ZCCS(:,:,2) - XVDEPOC * ZCCT(:,:,2) / ( PZZ(:,:,3) - PZZ(:,:,2)) + PINPRC(:,:) = PINPRC(:,:) + XVDEPOC * ZRCT(:,:,2) * PRHODREF(:,:,2) /XRHOLW + PINDEP(:,:) = XVDEPOC * ZRCT(:,:,2) * PRHODREF(:,:,2) /XRHOLW + END WHERE +! + IF ( LBUDGET_RC ) CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:),7 ,'DEPO_BU_RRC') + IF ( LBUDGET_SV ) CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NC,'DEPO_BU_RSV') +END IF +! +! +IF (LWARM .AND. LRAIN) THEN + CALL LIMA_DROPS_TO_DROPLETS_CONV(PRHODREF, ZRCS*PTSTEP, ZRRS*PTSTEP, ZCCS*PTSTEP, ZCRS*PTSTEP, & + Z_RR_CVRC, Z_CR_CVRC) + IF(LBU_ENABLE) THEN + IF (LBUDGET_RC) CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'R2C1_BU_RRC') + IF (LBUDGET_RR) CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'R2C1_BU_RRR') + IF (LBUDGET_SV) THEN + CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'R2C1_BU_RSV') + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'R2C1_BU_RSV') + END IF + END IF +END IF +! +! Update variables +! +ZTHT(:,:,:) = ZTHS(:,:,:) * PTSTEP +ZT(:,:,:) = ZTHT(:,:,:) * ZEXN(:,:,:) +! +IF ( KRR .GE. 2 ) ZRCT(:,:,:) = ZRCS(:,:,:) * PTSTEP - Z_RR_CVRC(:,:,:) +IF ( KRR .GE. 3 ) ZRRT(:,:,:) = ZRRS(:,:,:) * PTSTEP + Z_RR_CVRC(:,:,:) +IF ( KRR .GE. 4 ) ZRIT(:,:,:) = ZRIS(:,:,:) * PTSTEP +IF ( KRR .GE. 5 ) ZRST(:,:,:) = ZRSS(:,:,:) * PTSTEP +IF ( KRR .GE. 6 ) ZRGT(:,:,:) = ZRGS(:,:,:) * PTSTEP +IF ( KRR .GE. 7 ) ZRHT(:,:,:) = ZRHS(:,:,:) * PTSTEP +! +IF ( LWARM ) ZCCT(:,:,:) = ZCCS(:,:,:) * PTSTEP - Z_CR_CVRC(:,:,:) +IF ( LWARM .AND. LRAIN ) ZCRT(:,:,:) = ZCRS(:,:,:) * PTSTEP + Z_CR_CVRC(:,:,:) +IF ( LCOLD ) ZCIT(:,:,:) = ZCIS(:,:,:) * PTSTEP +! +!------------------------------------------------------------------------------- +! +!* 2. Nucleation processes +! -------------------- +! +! +IF( LACTIT ) THEN + ZTM(:,:,:) = PTHM(:,:,:) * (PPABSM(:,:,:)/XP00)**(XRD/XCPD) +ELSE + ZTM(:,:,:) = ZT(:,:,:) +END IF +! +CALL LIMA_NUCLEATION_PROCS (PTSTEP, TPFILE, OCLOSE_OUT, PRHODJ, & + PRHODREF, ZEXN, PPABST, ZT, ZTM, PW_NU, & + ZTHT, ZRVT, ZRCT, ZRRT, ZRIT, ZRST, ZRGT, & + ZCCT, ZCRT, ZCIT, & + ZCCNFT, ZCCNAT, ZIFNFT, ZIFNNT, ZIMMNT, ZHOMFT ) +! +! Saving sources before microphysics time-splitting loop +! +ZRVS(:,:,:) = ZRVT(:,:,:) *ZINV_TSTEP +ZRCS(:,:,:) = ZRCT(:,:,:) *ZINV_TSTEP +ZRRS(:,:,:) = ZRRT(:,:,:) *ZINV_TSTEP +ZRIS(:,:,:) = ZRIT(:,:,:) *ZINV_TSTEP +ZRSS(:,:,:) = ZRST(:,:,:) *ZINV_TSTEP +ZRGS(:,:,:) = ZRGT(:,:,:) *ZINV_TSTEP +ZRHS(:,:,:) = ZRHT(:,:,:) *ZINV_TSTEP +! +ZCCS(:,:,:) = ZCCT(:,:,:) *ZINV_TSTEP +ZCRS(:,:,:) = ZCRT(:,:,:) *ZINV_TSTEP +ZCIS(:,:,:) = ZCIT(:,:,:) *ZINV_TSTEP +! +ZCCNFS(:,:,:,:) = ZCCNFT(:,:,:,:) *ZINV_TSTEP +ZCCNAS(:,:,:,:) = ZCCNAT(:,:,:,:) *ZINV_TSTEP +ZIFNFS(:,:,:,:) = ZIFNFT(:,:,:,:) *ZINV_TSTEP +ZIFNNS(:,:,:,:) = ZIFNNT(:,:,:,:) *ZINV_TSTEP +ZIMMNS(:,:,:,:) = ZIMMNT(:,:,:,:) *ZINV_TSTEP +ZHOMFS(:,:,:) = ZHOMFT(:,:,:) *ZINV_TSTEP +! +ZTHS(:,:,:) = ZTHT(:,:,:) *ZINV_TSTEP +ZT(:,:,:) = ZTHT(:,:,:) * ZEXN(:,:,:) +! +! +!* 1. PREPARE COMPUTATIONS +! ----------------------- +! +! +KKA=1 +KKU=SIZE(PZZ,3) +KKL=1 +! +IIB=1+JPHEXT +IIE=SIZE(PZZ,1) - JPHEXT +IIT=SIZE(PZZ,1) +IJB=1+JPHEXT +IJE=SIZE(PZZ,2) - JPHEXT +IJT=SIZE(PZZ,2) +IKB=KKA+JPVEXT*KKL +IKE=KKU-JPVEXT*KKL +IKT=SIZE(PZZ,3) +IKTB=1+JPVEXT +IKTE=IKT-JPVEXT +! +!------------------------------------------------------------------------------- +! +!* 2. LOOP +! ---- +! +! +! Maximum number of iterations +INB_ITER_MAX=NMAXITER +IF(XTSTEP_TS/=0.)THEN + INB_ITER_MAX=MAX(1, INT(PTSTEP/XTSTEP_TS)) !At least the number of iterations needed for the time-splitting + ZTSTEP=PTSTEP/INB_ITER_MAX + INB_ITER_MAX=MAX(NMAXITER, INB_ITER_MAX) !Fot the case XMRSTEP/=0. at the same time +ENDIF +IITER(:,:,:)=0 +ZTIME(:,:,:)=0. ! Current integration time (all points may have a different integration time) +! +! Begin the huge time splitting loop +! +ZRT_SUM(:,:,:) = ZRCT(:,:,:) + ZRRT(:,:,:) + ZRIT(:,:,:) + ZRST(:,:,:) + ZRGT(:,:,:) + ZRHT(:,:,:) +WHERE (ZRT_SUM(:,:,:)<XRTMIN(2)) ZTIME(:,:,:)=PTSTEP ! no need to treat hydrometeor-free point +! +DO WHILE(ANY(ZTIME(IIB:IIE,IJB:IJE,IKB:IKE)<PTSTEP)) + ! + IF(XMRSTEP/=0.) THEN + ! In this case we need to remember the mixing ratios used to compute the tendencies + ! because when mixing ratio has evolved more than a threshold, we must re-compute tendecies + Z0RVT(:,:,:)=ZRVT(:,:,:) + Z0RCT(:,:,:)=ZRCT(:,:,:) + Z0RRT(:,:,:)=ZRRT(:,:,:) + Z0RIT(:,:,:)=ZRIT(:,:,:) + Z0RST(:,:,:)=ZRST(:,:,:) + Z0RGT(:,:,:)=ZRGT(:,:,:) + Z0RHT(:,:,:)=ZRHT(:,:,:) + ENDIF + ! + IF(XTSTEP_TS/=0.) THEN + ! In this case we need to remember the time when tendencies were computed + ! because when time has evolved more than a limit, we must re-compute tendecies + ZTIME_LASTCALL(:,:,:)=ZTIME(:,:,:) + ENDIF + ! + LLCOMPUTE(:,:,:)=.FALSE. + LLCOMPUTE(IIB:IIE,IJB:IJE,IKB:IKE) = ZTIME(IIB:IIE,IJB:IJE,IKB:IKE)<PTSTEP ! Compuation only for points for which integration time has not reached the timestep + WHERE(LLCOMPUTE(:,:,:)) + IITER(:,:,:)=IITER(:,:,:)+1 + END WHERE + ! + DO WHILE(ANY(LLCOMPUTE(:,:,:))) ! Loop to adjust tendencies when we cross the 0°C or when a species disappears + + ! + ! Packing variables to run computations only where necessary + ! + IPACK = COUNT(LLCOMPUTE) + ALLOCATE(I1(IPACK)) + ALLOCATE(I2(IPACK)) + ALLOCATE(I3(IPACK)) + ALLOCATE(ZRHODREF1D(IPACK)) + ALLOCATE(ZEXNREF1D(IPACK)) + ALLOCATE(ZEXN1D(IPACK)) + ALLOCATE(ZP1D(IPACK)) + ALLOCATE(ZTHT1D(IPACK)) + ALLOCATE(ZRVT1D(IPACK)) + ALLOCATE(ZRCT1D(IPACK)) + ALLOCATE(ZRRT1D(IPACK)) + ALLOCATE(ZRIT1D(IPACK)) + ALLOCATE(ZRST1D(IPACK)) + ALLOCATE(ZRGT1D(IPACK)) + ALLOCATE(ZRHT1D(IPACK)) + ALLOCATE(ZCCT1D(IPACK)) + ALLOCATE(ZCRT1D(IPACK)) + ALLOCATE(ZCIT1D(IPACK)) + ALLOCATE(ZIFNN1D(IPACK,NMOD_IFN)) + ALLOCATE(ZEVAP1D(IPACK)) + ALLOCATE(ZTIME1D(IPACK)) + ALLOCATE(LLCOMPUTE1D(IPACK)) + ALLOCATE(IITER1D(IPACK)) + ALLOCATE(ZTIME_LASTCALL1D(IPACK)) + ALLOCATE(Z0RVT1D(IPACK)) + ALLOCATE(Z0RCT1D(IPACK)) + ALLOCATE(Z0RRT1D(IPACK)) + ALLOCATE(Z0RIT1D(IPACK)) + ALLOCATE(Z0RST1D(IPACK)) + ALLOCATE(Z0RGT1D(IPACK)) + ALLOCATE(Z0RHT1D(IPACK)) + IPACK = COUNTJV(LLCOMPUTE,I1,I2,I3) + DO II=1,IPACK + ZRHODREF1D(II) = PRHODREF(I1(II),I2(II),I3(II)) + ZEXNREF1D(II) = PEXNREF(I1(II),I2(II),I3(II)) + ZEXN1D(II) = ZEXN(I1(II),I2(II),I3(II)) + ZP1D(II) = PPABST(I1(II),I2(II),I3(II)) + ZTHT1D(II) = ZTHT(I1(II),I2(II),I3(II)) + ZRVT1D(II) = ZRVT(I1(II),I2(II),I3(II)) + ZRCT1D(II) = ZRCT(I1(II),I2(II),I3(II)) + ZRRT1D(II) = ZRRT(I1(II),I2(II),I3(II)) + ZRIT1D(II) = ZRIT(I1(II),I2(II),I3(II)) + ZRST1D(II) = ZRST(I1(II),I2(II),I3(II)) + ZRGT1D(II) = ZRGT(I1(II),I2(II),I3(II)) + ZRHT1D(II) = ZRHT(I1(II),I2(II),I3(II)) + ZCCT1D(II) = ZCCT(I1(II),I2(II),I3(II)) + ZCRT1D(II) = ZCRT(I1(II),I2(II),I3(II)) + ZCIT1D(II) = ZCIT(I1(II),I2(II),I3(II)) + ZIFNN1D(II,:) = ZIFNNT(I1(II),I2(II),I3(II),:) + ZEVAP1D(II) = PEVAP3D(I1(II),I2(II),I3(II)) + ZTIME1D(II) = ZTIME(I1(II),I2(II),I3(II)) + LLCOMPUTE1D(II) = LLCOMPUTE(I1(II),I2(II),I3(II)) + IITER1D(II) = IITER(I1(II),I2(II),I3(II)) + ZTIME_LASTCALL1D(II) = ZTIME_LASTCALL(I1(II),I2(II),I3(II)) + Z0RVT1D(II) = Z0RVT(I1(II),I2(II),I3(II)) + Z0RCT1D(II) = Z0RCT(I1(II),I2(II),I3(II)) + Z0RRT1D(II) = Z0RRT(I1(II),I2(II),I3(II)) + Z0RIT1D(II) = Z0RIT(I1(II),I2(II),I3(II)) + Z0RST1D(II) = Z0RST(I1(II),I2(II),I3(II)) + Z0RGT1D(II) = Z0RGT(I1(II),I2(II),I3(II)) + Z0RHT1D(II) = Z0RHT(I1(II),I2(II),I3(II)) + END DO + ! + ! Allocating 1D variables + ! + ALLOCATE(ZMAXTIME(IPACK)) ; ZMAXTIME(:) = 0. + ALLOCATE(ZTIME_THRESHOLD(IPACK)) ; ZTIME_THRESHOLD(:) = 0. + ! + ALLOCATE(ZA_TH(IPACK)) ; ZA_TH(:) = 0. + ALLOCATE(ZA_RV(IPACK)) ; ZA_RV(:) = 0. + ALLOCATE(ZA_RC(IPACK)) ; ZA_RC(:) = 0. + ALLOCATE(ZA_RR(IPACK)) ; ZA_RR(:) = 0. + ALLOCATE(ZA_RI(IPACK)) ; ZA_RI(:) = 0. + ALLOCATE(ZA_RS(IPACK)) ; ZA_RS(:) = 0. + ALLOCATE(ZA_RG(IPACK)) ; ZA_RG(:) = 0. + ALLOCATE(ZA_RH(IPACK)) ; ZA_RH(:) = 0. + ALLOCATE(ZA_CC(IPACK)) ; ZA_CC(:) = 0. + ALLOCATE(ZA_CR(IPACK)) ; ZA_CR(:) = 0. + ALLOCATE(ZA_CI(IPACK)) ; ZA_CI(:) = 0. + ! + ALLOCATE(ZB_TH(IPACK)) ; ZB_TH(:) = 0. + ALLOCATE(ZB_RV(IPACK)) ; ZB_RV(:) = 0. + ALLOCATE(ZB_RC(IPACK)) ; ZB_RC(:) = 0. + ALLOCATE(ZB_RR(IPACK)) ; ZB_RR(:) = 0. + ALLOCATE(ZB_RI(IPACK)) ; ZB_RI(:) = 0. + ALLOCATE(ZB_RS(IPACK)) ; ZB_RS(:) = 0. + ALLOCATE(ZB_RG(IPACK)) ; ZB_RG(:) = 0. + ALLOCATE(ZB_RH(IPACK)) ; ZB_RH(:) = 0. + ALLOCATE(ZB_CC(IPACK)) ; ZB_CC(:) = 0. + ALLOCATE(ZB_CR(IPACK)) ; ZB_CR(:) = 0. + ALLOCATE(ZB_CI(IPACK)) ; ZB_CI(:) = 0. + ALLOCATE(ZB_IFNN(IPACK,NMOD_IFN)) ; ZB_IFNN(:,:) = 0. + ! + ALLOCATE(Z_CR_BRKU(IPACK)) ; Z_CR_BRKU(:) = 0. + ALLOCATE(Z_TH_HONR(IPACK)) ; Z_TH_HONR(:) = 0. + ALLOCATE(Z_RR_HONR(IPACK)) ; Z_RR_HONR(:) = 0. + ALLOCATE(Z_CR_HONR(IPACK)) ; Z_CR_HONR(:) = 0. + ALLOCATE(Z_TH_IMLT(IPACK)) ; Z_TH_IMLT(:) = 0. + ALLOCATE(Z_RC_IMLT(IPACK)) ; Z_RC_IMLT(:) = 0. + ALLOCATE(Z_CC_IMLT(IPACK)) ; Z_CC_IMLT(:) = 0. + ALLOCATE(Z_TH_HONC(IPACK)) ; Z_TH_HONC(:) = 0. + ALLOCATE(Z_RC_HONC(IPACK)) ; Z_RC_HONC(:) = 0. + ALLOCATE(Z_CC_HONC(IPACK)) ; Z_CC_HONC(:) = 0. + ALLOCATE(Z_CC_SELF(IPACK)) ; Z_CC_SELF(:) = 0. + ALLOCATE(Z_RC_AUTO(IPACK)) ; Z_RC_AUTO(:) = 0. + ALLOCATE(Z_CC_AUTO(IPACK)) ; Z_CC_AUTO(:) = 0. + ALLOCATE(Z_CR_AUTO(IPACK)) ; Z_CR_AUTO(:) = 0. + ALLOCATE(Z_RC_ACCR(IPACK)) ; Z_RC_ACCR(:) = 0. + ALLOCATE(Z_CC_ACCR(IPACK)) ; Z_CC_ACCR(:) = 0. + ALLOCATE(Z_CR_SCBU(IPACK)) ; Z_CR_SCBU(:) = 0. + ALLOCATE(Z_TH_EVAP(IPACK)) ; Z_TH_EVAP(:) = 0. + ALLOCATE(Z_RR_EVAP(IPACK)) ; Z_RR_EVAP(:) = 0. + ALLOCATE(Z_RI_CNVI(IPACK)) ; Z_RI_CNVI(:) = 0. + ALLOCATE(Z_CI_CNVI(IPACK)) ; Z_CI_CNVI(:) = 0. + ALLOCATE(Z_TH_DEPS(IPACK)) ; Z_TH_DEPS(:) = 0. + ALLOCATE(Z_RS_DEPS(IPACK)) ; Z_RS_DEPS(:) = 0. + ALLOCATE(Z_RI_CNVS(IPACK)) ; Z_RI_CNVS(:) = 0. + ALLOCATE(Z_CI_CNVS(IPACK)) ; Z_CI_CNVS(:) = 0. + ALLOCATE(Z_RI_AGGS(IPACK)) ; Z_RI_AGGS(:) = 0. + ALLOCATE(Z_CI_AGGS(IPACK)) ; Z_CI_AGGS(:) = 0. + ALLOCATE(Z_TH_DEPG(IPACK)) ; Z_TH_DEPG(:) = 0. + ALLOCATE(Z_RG_DEPG(IPACK)) ; Z_RG_DEPG(:) = 0. + ALLOCATE(Z_TH_BERFI(IPACK)) ; Z_TH_BERFI(:) = 0. + ALLOCATE(Z_RC_BERFI(IPACK)) ; Z_RC_BERFI(:) = 0. + ALLOCATE(Z_TH_RIM(IPACK)) ; Z_TH_RIM = 0. + ALLOCATE(Z_RC_RIM(IPACK)) ; Z_RC_RIM = 0. + ALLOCATE(Z_CC_RIM(IPACK)) ; Z_CC_RIM = 0. + ALLOCATE(Z_RS_RIM(IPACK)) ; Z_RS_RIM = 0. + ALLOCATE(Z_RG_RIM(IPACK)) ; Z_RG_RIM = 0. + ALLOCATE(Z_RI_HMS(IPACK)) ; Z_RI_HMS = 0. + ALLOCATE(Z_CI_HMS(IPACK)) ; Z_CI_HMS = 0. + ALLOCATE(Z_RS_HMS(IPACK)) ; Z_RS_HMS = 0. + ALLOCATE(Z_TH_ACC(IPACK)) ; Z_TH_ACC = 0. + ALLOCATE(Z_RR_ACC(IPACK)) ; Z_RR_ACC = 0. + ALLOCATE(Z_CR_ACC(IPACK)) ; Z_CR_ACC = 0. + ALLOCATE(Z_RS_ACC(IPACK)) ; Z_RS_ACC = 0. + ALLOCATE(Z_RG_ACC(IPACK)) ; Z_RG_ACC = 0. + ALLOCATE(Z_RS_CMEL(IPACK)) ; Z_RS_CMEL = 0. + ALLOCATE(Z_TH_CFRZ(IPACK)) ; Z_TH_CFRZ = 0. + ALLOCATE(Z_RR_CFRZ(IPACK)) ; Z_RR_CFRZ = 0. + ALLOCATE(Z_CR_CFRZ(IPACK)) ; Z_CR_CFRZ = 0. + ALLOCATE(Z_RI_CFRZ(IPACK)) ; Z_RI_CFRZ = 0. + ALLOCATE(Z_CI_CFRZ(IPACK)) ; Z_CI_CFRZ = 0. + ALLOCATE(Z_TH_WETG(IPACK)) ; Z_TH_WETG = 0. + ALLOCATE(Z_RC_WETG(IPACK)) ; Z_RC_WETG = 0. + ALLOCATE(Z_CC_WETG(IPACK)) ; Z_CC_WETG = 0. + ALLOCATE(Z_RR_WETG(IPACK)) ; Z_RR_WETG = 0. + ALLOCATE(Z_CR_WETG(IPACK)) ; Z_CR_WETG = 0. + ALLOCATE(Z_RI_WETG(IPACK)) ; Z_RI_WETG = 0. + ALLOCATE(Z_CI_WETG(IPACK)) ; Z_CI_WETG = 0. + ALLOCATE(Z_RS_WETG(IPACK)) ; Z_RS_WETG = 0. + ALLOCATE(Z_RG_WETG(IPACK)) ; Z_RG_WETG = 0. + ALLOCATE(Z_RH_WETG(IPACK)) ; Z_RH_WETG = 0. + ALLOCATE(Z_TH_DRYG(IPACK)) ; Z_TH_DRYG = 0. + ALLOCATE(Z_RC_DRYG(IPACK)) ; Z_RC_DRYG = 0. + ALLOCATE(Z_CC_DRYG(IPACK)) ; Z_CC_DRYG = 0. + ALLOCATE(Z_RR_DRYG(IPACK)) ; Z_RR_DRYG = 0. + ALLOCATE(Z_CR_DRYG(IPACK)) ; Z_CR_DRYG = 0. + ALLOCATE(Z_RI_DRYG(IPACK)) ; Z_RI_DRYG = 0. + ALLOCATE(Z_CI_DRYG(IPACK)) ; Z_CI_DRYG = 0. + ALLOCATE(Z_RS_DRYG(IPACK)) ; Z_RS_DRYG = 0. + ALLOCATE(Z_RG_DRYG(IPACK)) ; Z_RG_DRYG = 0. + ALLOCATE(Z_RI_HMG(IPACK)) ; Z_RI_HMG = 0. + ALLOCATE(Z_CI_HMG(IPACK)) ; Z_CI_HMG = 0. + ALLOCATE(Z_RG_HMG(IPACK)) ; Z_RG_HMG = 0. + ALLOCATE(Z_TH_GMLT(IPACK)) ; Z_TH_GMLT = 0. + ALLOCATE(Z_RR_GMLT(IPACK)) ; Z_RR_GMLT = 0. + ALLOCATE(Z_CR_GMLT(IPACK)) ; Z_CR_GMLT = 0. + + ! + !*** 4.1 Tendecies computation + ! + + CALL LIMA_INST_PROCS (PTSTEP, LLCOMPUTE1D, & + ZEXNREF1D, ZP1D, & + ZTHT1D, ZRVT1D, ZRCT1D, ZRRT1D, ZRIT1D, ZRST1D, ZRGT1D, & + ZCCT1D, ZCRT1D, ZCIT1D, & + ZIFNN1D, & + Z_CR_BRKU, & ! spontaneous break up of drops (BRKU) : Nr + Z_TH_HONR, Z_RR_HONR, Z_CR_HONR, & ! rain drops homogeneous freezing (HONR) : rr, Nr, rg=-rr, th + Z_TH_IMLT, Z_RC_IMLT, Z_CC_IMLT, & ! ice melting (IMLT) : rc, Nc, ri=-rc, Ni=-Nc, th, IFNF, IFNA + ZB_TH, ZB_RV, ZB_RC, ZB_RR, ZB_RI, ZB_RG, & + ZB_CC, ZB_CR, ZB_CI, & + ZB_IFNN ) + + CALL LIMA_TENDENCIES (PTSTEP, LLCOMPUTE1D, & + ZEXNREF1D, ZRHODREF1D, ZP1D, ZTHT1D, & + ZRVT1D, ZRCT1D, ZRRT1D, ZRIT1D, ZRST1D, ZRGT1D, ZRHT1D,& + ZCCT1D, ZCRT1D, ZCIT1D, & + Z_TH_HONC, Z_RC_HONC, Z_CC_HONC, & + Z_CC_SELF, & + Z_RC_AUTO, Z_CC_AUTO, Z_CR_AUTO, & + Z_RC_ACCR, Z_CC_ACCR, & + Z_CR_SCBU, & + Z_TH_EVAP, Z_RR_EVAP, & + Z_RI_CNVI, Z_CI_CNVI, & + Z_TH_DEPS, Z_RS_DEPS, & + Z_RI_CNVS, Z_CI_CNVS, & + Z_RI_AGGS, Z_CI_AGGS, & + Z_TH_DEPG, Z_RG_DEPG, & + Z_TH_BERFI, Z_RC_BERFI, & + Z_TH_RIM, Z_RC_RIM, Z_CC_RIM, Z_RS_RIM, Z_RG_RIM, & + Z_RI_HMS, Z_CI_HMS, Z_RS_HMS, & + Z_TH_ACC, Z_RR_ACC, Z_CR_ACC, Z_RS_ACC, Z_RG_ACC, & + Z_RS_CMEL, & + Z_TH_CFRZ, Z_RR_CFRZ, Z_CR_CFRZ, Z_RI_CFRZ, Z_CI_CFRZ, & + Z_TH_WETG, Z_RC_WETG, Z_CC_WETG, Z_RR_WETG, Z_CR_WETG, & + Z_RI_WETG, Z_CI_WETG, Z_RS_WETG, Z_RG_WETG, Z_RH_WETG, & + Z_TH_DRYG, Z_RC_DRYG, Z_CC_DRYG, Z_RR_DRYG, Z_CR_DRYG, & + Z_RI_DRYG, Z_CI_DRYG, Z_RS_DRYG, Z_RG_DRYG, & + Z_RI_HMG, Z_CI_HMG, Z_RG_HMG, & + Z_TH_GMLT, Z_RR_GMLT, Z_CR_GMLT, & +!!! Z_RC_WETH, Z_CC_WETH, Z_RR_WETH, Z_CR_WETH, & ! wet growth of hail (WETH) : rc, Nc, rr, Nr, ri, Ni, rs, rg, rh, th +!!! Z_RI_WETH, Z_CI_WETH, Z_RS_WETH, Z_RG_WETH, Z_RH_WETH, & ! wet growth of hail (WETH) : rc, Nc, rr, Nr, ri, Ni, rs, rg, rh, th +!!! Z_RG_COHG, & ! conversion of hail into graupel (COHG) : rg, rh +!!! Z_RR_HMLT, Z_CR_HMLT ! hail melting (HMLT) : rr, Nr, rh=-rr, th + ZA_TH, ZA_RV, ZA_RC, ZA_CC, ZA_RR, ZA_CR, & + ZA_RI, ZA_CI, ZA_RS, ZA_RG, ZA_RH, & + ZEVAP1D ) + + ! + !*** 4.2 Integration time + ! + ! If we can, we will use these tendecies until the end of the timestep + ZMAXTIME(:)=PTSTEP-ZTIME1D(:) ! Remaining time until the end of the timestep + + ! We need to adjust tendencies when temperature reaches 0 + IF(LFEEDBACKT) THEN + !Is ZB_TH enough to change temperature sign? + WHERE( ((ZTHT1D(:) - XTT/ZEXN1D(:)) * (ZTHT1D(:) + ZB_TH(:) - XTT/ZEXN1D(:))) < 0. ) + ZMAXTIME(:)=0. + ENDWHERE + !Can ZA_TH make temperature change of sign? + ZTIME_THRESHOLD(:)=-1. + WHERE(ABS(ZA_TH(:))>1.E-20) + ZTIME_THRESHOLD(:)=(XTT/ZEXN1D(:) - ZB_TH(:) - ZTHT1D(:))/ZA_TH(:) + ENDWHERE + WHERE(ZTIME_THRESHOLD(:)>0.) + ZMAXTIME(:)=MIN(ZMAXTIME(:), ZTIME_THRESHOLD(:)) + ENDWHERE + ENDIF + + ! We need to adjust tendencies when a species disappears + ! When a species is missing, only the external tendencies can be negative (and we must keep track of it) + WHERE(ZA_RV(:)<-1.E-20 .AND. ZRVT1D(:)>XRTMIN(1)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), -(ZB_RV(:)+ZRVT1D(:))/ZA_RV(:)) + END WHERE + WHERE(ZA_RC(:)<-1.E-20 .AND. ZRCT1D(:)>XRTMIN(2)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), -(ZB_RC(:)+ZRCT1D(:))/ZA_RC(:)) + END WHERE + WHERE(ZA_RR(:)<-1.E-20 .AND. ZRRT1D(:)>XRTMIN(3)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), -(ZB_RR(:)+ZRRT1D(:))/ZA_RR(:)) + END WHERE + WHERE(ZA_RI(:)<-1.E-20 .AND. ZRIT1D(:)>XRTMIN(4)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), -(ZB_RI(:)+ZRIT1D(:))/ZA_RI(:)) + END WHERE + WHERE(ZA_RS(:)<-1.E-20 .AND. ZRST1D(:)>XRTMIN(5)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), -(ZB_RS(:)+ZRST1D(:))/ZA_RS(:)) + END WHERE + WHERE(ZA_RG(:)<-1.E-20 .AND. ZRGT1D(:)>XRTMIN(6)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), -(ZB_RG(:)+ZRGT1D(:))/ZA_RG(:)) + END WHERE + WHERE(ZA_RH(:)<-1.E-20 .AND. ZRHT1D(:)>XRTMIN(7)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), -(ZB_RH(:)+ZRHT1D(:))/ZA_RH(:)) + END WHERE + + ! We stop when the end of the timestep is reached + WHERE(PTSTEP-ZTIME1D(:)-ZMAXTIME(:)<=0.) + LLCOMPUTE1D(:)=.FALSE. + ENDWHERE + + ! We must recompute tendencies when the end of the sub-timestep is reached + IF(XTSTEP_TS/=0.) THEN + WHERE(IITER1D(:)<INB_ITER_MAX .AND. ZTIME1D(:)+ZMAXTIME(:)>ZTIME_LASTCALL1D(:)+ZTSTEP) + ZMAXTIME(:)=ZTIME_LASTCALL1D(:)-ZTIME1D(:)+ZTSTEP + LLCOMPUTE1D(:)=.FALSE. + ENDWHERE + ENDIF + + ! We must recompute tendencies when the maximum allowed change is reached + ! When a species is missing, only the external tendencies can be active and we do not want to recompute + ! the microphysical tendencies when external tendencies are negative (results won't change because species was already missing) + IF(XMRSTEP/=0.) THEN + ZTIME_THRESHOLD(:)=-1. + WHERE(IITER1D(:)<INB_ITER_MAX .AND. ABS(ZA_RV(:))>1.E-20) + ZTIME_THRESHOLD(:)=(SIGN(1., ZA_RV(:))*XMRSTEP+Z0RVT1D(:)-ZRVT1D(:)-ZB_RV(:))/ZA_RV(:) + ENDWHERE + WHERE(ZTIME_THRESHOLD(:)>=0. .AND. ZTIME_THRESHOLD(:)<ZMAXTIME(:) .AND. & + &(ZRVT1D(:)>XRTMIN(1) .OR. ZA_RV(:)>0.)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), ZTIME_THRESHOLD(:)) + LLCOMPUTE1D(:)=.FALSE. + ENDWHERE + + ZTIME_THRESHOLD(:)=-1. + WHERE(IITER1D(:)<INB_ITER_MAX .AND. ABS(ZA_RC(:))>1.E-20) + ZTIME_THRESHOLD(:)=(SIGN(1., ZA_RC(:))*XMRSTEP+Z0RCT1D(:)-ZRCT1D(:)-ZB_RC(:))/ZA_RC(:) + ENDWHERE + WHERE(ZTIME_THRESHOLD(:)>=0. .AND. ZTIME_THRESHOLD(:)<ZMAXTIME(:) .AND. & + &(ZRCT1D(:)>XRTMIN(2) .OR. ZA_RC(:)>0.)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), ZTIME_THRESHOLD(:)) + LLCOMPUTE1D(:)=.FALSE. + ENDWHERE + + ZTIME_THRESHOLD(:)=-1. + WHERE(IITER1D(:)<INB_ITER_MAX .AND. ABS(ZA_RR(:))>1.E-20) + ZTIME_THRESHOLD(:)=(SIGN(1., ZA_RR(:))*XMRSTEP+Z0RRT1D(:)-ZRRT1D(:)-ZB_RR(:))/ZA_RR(:) + ENDWHERE + WHERE(ZTIME_THRESHOLD(:)>=0. .AND. ZTIME_THRESHOLD(:)<ZMAXTIME(:) .AND. & + &(ZRRT1D(:)>XRTMIN(3) .OR. ZA_RR(:)>0.)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), ZTIME_THRESHOLD(:)) + LLCOMPUTE1D(:)=.FALSE. + ENDWHERE + + ZTIME_THRESHOLD(:)=-1. + WHERE(IITER1D(:)<INB_ITER_MAX .AND. ABS(ZA_RI(:))>1.E-20) + ZTIME_THRESHOLD(:)=(SIGN(1., ZA_RI(:))*XMRSTEP+Z0RIT1D(:)-ZRIT1D(:)-ZB_RI(:))/ZA_RI(:) + ENDWHERE + WHERE(ZTIME_THRESHOLD(:)>=0. .AND. ZTIME_THRESHOLD(:)<ZMAXTIME(:) .AND. & + &(ZRIT1D(:)>XRTMIN(4) .OR. ZA_RI(:)>0.)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), ZTIME_THRESHOLD(:)) + LLCOMPUTE1D(:)=.FALSE. + ENDWHERE + + ZTIME_THRESHOLD(:)=-1. + WHERE(IITER1D(:)<INB_ITER_MAX .AND. ABS(ZA_RS(:))>1.E-20) + ZTIME_THRESHOLD(:)=(SIGN(1., ZA_RS(:))*XMRSTEP+Z0RST1D(:)-ZRST1D(:)-ZB_RS(:))/ZA_RS(:) + ENDWHERE + WHERE(ZTIME_THRESHOLD(:)>=0. .AND. ZTIME_THRESHOLD(:)<ZMAXTIME(:) .AND. & + &(ZRST1D(:)>XRTMIN(5) .OR. ZA_RS(:)>0.)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), ZTIME_THRESHOLD(:)) + LLCOMPUTE1D(:)=.FALSE. + ENDWHERE + + ZTIME_THRESHOLD(:)=-1. + WHERE(IITER1D(:)<INB_ITER_MAX .AND. ABS(ZA_RG(:))>1.E-20) + ZTIME_THRESHOLD(:)=(SIGN(1., ZA_RG(:))*XMRSTEP+Z0RGT1D(:)-ZRGT1D(:)-ZB_RG(:))/ZA_RG(:) + ENDWHERE + WHERE(ZTIME_THRESHOLD(:)>=0. .AND. ZTIME_THRESHOLD(:)<ZMAXTIME(:) .AND. & + &(ZRGT1D(:)>XRTMIN(6) .OR. ZA_RG(:)>0.)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), ZTIME_THRESHOLD(:)) + LLCOMPUTE1D(:)=.FALSE. + ENDWHERE + + ZTIME_THRESHOLD(:)=-1. + WHERE(IITER1D(:)<INB_ITER_MAX .AND. ABS(ZA_RH(:))>1.E-20) + ZTIME_THRESHOLD(:)=(SIGN(1., ZA_RH(:))*XMRSTEP+Z0RHT1D(:)-ZRHT1D(:)-ZB_RH(:))/ZA_RH(:) + ENDWHERE + WHERE(ZTIME_THRESHOLD(:)>=0. .AND. ZTIME_THRESHOLD(:)<ZMAXTIME(:) .AND. & + &(ZRHT1D(:)>XRTMIN(7) .OR. ZA_RH(:)>0.)) + ZMAXTIME(:)=MIN(ZMAXTIME(:), ZTIME_THRESHOLD(:)) + LLCOMPUTE1D(:)=.FALSE. + ENDWHERE + + WHERE(IITER1D(:)<INB_ITER_MAX .AND. MAX(ABS(ZB_RV(:)), & + ABS(ZB_RC(:)), ABS(ZB_RR(:)), ABS(ZB_RI(:)), & + ABS(ZB_RS(:)), ABS(ZB_RG(:)), ABS(ZB_RH(:)))>XMRSTEP) + ZMAXTIME(:)=0. + LLCOMPUTE1D(:)=.FALSE. + ENDWHERE + ENDIF + ! + !*** 4.3 New values of variables for next iteration + ! + ZTHT1D = ZTHT1D + ZA_TH(:) * ZMAXTIME(:) + ZB_TH(:) + ZRVT1D = ZRVT1D + ZA_RV(:) * ZMAXTIME(:) + ZB_RV(:) + ZRCT1D = ZRCT1D + ZA_RC(:) * ZMAXTIME(:) + ZB_RC(:) + ZCCT1D = ZCCT1D + ZA_CC(:) * ZMAXTIME(:) + ZB_CC(:) + ZRRT1D = ZRRT1D + ZA_RR(:) * ZMAXTIME(:) + ZB_RR(:) + ZCRT1D = ZCRT1D + ZA_CR(:) * ZMAXTIME(:) + ZB_CR(:) + ZRIT1D = ZRIT1D + ZA_RI(:) * ZMAXTIME(:) + ZB_RI(:) + ZCIT1D = ZCIT1D + ZA_CI(:) * ZMAXTIME(:) + ZB_CI(:) + ZRST1D = ZRST1D + ZA_RS(:) * ZMAXTIME(:) + ZB_RS(:) + ZRGT1D = ZRGT1D + ZA_RG(:) * ZMAXTIME(:) + ZB_RG(:) + ZRHT1D = ZRHT1D + ZA_RH(:) * ZMAXTIME(:) + ZB_RH(:) + ! + + DO II=1,NMOD_IFN + ZIFNN1D(:,II) = ZIFNN1D(:,II) + ZB_IFNN(:,II) + END DO + ! + !*** 4.5 + ! + WHERE (ZRCT1D .LE. XRTMIN(2)) + ZRVT1D = ZRVT1D + ZRCT1D + ZRCT1D = 0. + ZCCT1D = 0. + END WHERE + WHERE (ZRRT1D .LE. XRTMIN(3)) + ZRVT1D = ZRVT1D + ZRRT1D + ZRRT1D = 0. + ZCRT1D = 0. + END WHERE + WHERE (ZRIT1D .LE. XRTMIN(4)) + ZRVT1D = ZRVT1D + ZRIT1D + ZRIT1D = 0. + ZCIT1D = 0. + END WHERE + + ! + !*** 4.5 Next loop + ! + ZTIME1D(:)=ZTIME1D(:)+ZMAXTIME(:) + ! + !*** 4.4 Unpacking + ! + DO II=1,IPACK + ZTHT(I1(II),I2(II),I3(II)) = ZTHT1D(II) + ZRVT(I1(II),I2(II),I3(II)) = ZRVT1D(II) + ZRCT(I1(II),I2(II),I3(II)) = ZRCT1D(II) + ZRRT(I1(II),I2(II),I3(II)) = ZRRT1D(II) + ZRIT(I1(II),I2(II),I3(II)) = ZRIT1D(II) + ZRST(I1(II),I2(II),I3(II)) = ZRST1D(II) + ZRGT(I1(II),I2(II),I3(II)) = ZRGT1D(II) + ZRHT(I1(II),I2(II),I3(II)) = ZRHT1D(II) + ZCCT(I1(II),I2(II),I3(II)) = ZCCT1D(II) + ZCRT(I1(II),I2(II),I3(II)) = ZCRT1D(II) + ZCIT(I1(II),I2(II),I3(II)) = ZCIT1D(II) + ZIFNNT(I1(II),I2(II),I3(II),:) = ZIFNN1D(II,:) + PEVAP3D(I1(II),I2(II),I3(II)) = ZEVAP1D(II) + ZTIME(I1(II),I2(II),I3(II)) = ZTIME1D(II) + LLCOMPUTE(I1(II),I2(II),I3(II)) = LLCOMPUTE1D(II) + IITER(I1(II),I2(II),I3(II)) = IITER1D(II) + END DO + ! + CALL LIMA_DROPS_TO_DROPLETS_CONV(PRHODREF, ZRCT, ZRRT, ZCCT, ZCRT, & + Z_RR_CVRC, Z_CR_CVRC ) + ZTOT_RR_CVRC(:,:,:) = ZTOT_RR_CVRC(:,:,:) + Z_RR_CVRC(:,:,:) + ZTOT_CR_CVRC(:,:,:) = ZTOT_CR_CVRC(:,:,:) + Z_CR_CVRC(:,:,:) + ZRCT(:,:,:) = ZRCT(:,:,:) - Z_RR_CVRC(:,:,:) + ZRRT(:,:,:) = ZRRT(:,:,:) + Z_RR_CVRC(:,:,:) + ZCCT(:,:,:) = ZCCT(:,:,:) - Z_CR_CVRC(:,:,:) + ZCRT(:,:,:) = ZCRT(:,:,:) + Z_CR_CVRC(:,:,:) + ! + !*** 4.4 Unpacking for budgets + ! + IF(LBU_ENABLE) THEN + DO II=1,IPACK + ! Instantaneous processes + ZTOT_CR_BRKU(I1(II),I2(II),I3(II)) = ZTOT_CR_BRKU(I1(II),I2(II),I3(II)) + Z_CR_BRKU(II) + ZTOT_TH_HONR(I1(II),I2(II),I3(II)) = ZTOT_TH_HONR(I1(II),I2(II),I3(II)) + Z_TH_HONR(II) + ZTOT_RR_HONR(I1(II),I2(II),I3(II)) = ZTOT_RR_HONR(I1(II),I2(II),I3(II)) + Z_RR_HONR(II) + ZTOT_CR_HONR(I1(II),I2(II),I3(II)) = ZTOT_CR_HONR(I1(II),I2(II),I3(II)) + Z_CR_HONR(II) + ZTOT_TH_IMLT(I1(II),I2(II),I3(II)) = ZTOT_TH_IMLT(I1(II),I2(II),I3(II)) + Z_TH_IMLT(II) + ZTOT_RC_IMLT(I1(II),I2(II),I3(II)) = ZTOT_RC_IMLT(I1(II),I2(II),I3(II)) + Z_RC_IMLT(II) + ZTOT_CC_IMLT(I1(II),I2(II),I3(II)) = ZTOT_CC_IMLT(I1(II),I2(II),I3(II)) + Z_CC_IMLT(II) + ! Tendencies + ZTOT_TH_HONC(I1(II),I2(II),I3(II)) = ZTOT_TH_HONC(I1(II),I2(II),I3(II)) + Z_TH_HONC(II) * ZMAXTIME(II) + ZTOT_RC_HONC(I1(II),I2(II),I3(II)) = ZTOT_RC_HONC(I1(II),I2(II),I3(II)) + Z_RC_HONC(II) * ZMAXTIME(II) + ZTOT_CC_HONC(I1(II),I2(II),I3(II)) = ZTOT_CC_HONC(I1(II),I2(II),I3(II)) + Z_CC_HONC(II) * ZMAXTIME(II) + ZTOT_CC_SELF(I1(II),I2(II),I3(II)) = ZTOT_CC_SELF(I1(II),I2(II),I3(II)) + Z_CC_SELF(II) * ZMAXTIME(II) + ZTOT_RC_AUTO(I1(II),I2(II),I3(II)) = ZTOT_RC_AUTO(I1(II),I2(II),I3(II)) + Z_RC_AUTO(II) * ZMAXTIME(II) + ZTOT_CC_AUTO(I1(II),I2(II),I3(II)) = ZTOT_CC_AUTO(I1(II),I2(II),I3(II)) + Z_CC_AUTO(II) * ZMAXTIME(II) + ZTOT_CR_AUTO(I1(II),I2(II),I3(II)) = ZTOT_CR_AUTO(I1(II),I2(II),I3(II)) + Z_CR_AUTO(II) * ZMAXTIME(II) + ZTOT_RC_ACCR(I1(II),I2(II),I3(II)) = ZTOT_RC_ACCR(I1(II),I2(II),I3(II)) + Z_RC_ACCR(II) * ZMAXTIME(II) + ZTOT_CC_ACCR(I1(II),I2(II),I3(II)) = ZTOT_CC_ACCR(I1(II),I2(II),I3(II)) + Z_CC_ACCR(II) * ZMAXTIME(II) + ZTOT_CR_SCBU(I1(II),I2(II),I3(II)) = ZTOT_CR_SCBU(I1(II),I2(II),I3(II)) + Z_CR_SCBU(II) * ZMAXTIME(II) + ZTOT_TH_EVAP(I1(II),I2(II),I3(II)) = ZTOT_TH_EVAP(I1(II),I2(II),I3(II)) + Z_TH_EVAP(II) * ZMAXTIME(II) + ZTOT_RR_EVAP(I1(II),I2(II),I3(II)) = ZTOT_RR_EVAP(I1(II),I2(II),I3(II)) + Z_RR_EVAP(II) * ZMAXTIME(II) + ZTOT_RI_CNVI(I1(II),I2(II),I3(II)) = ZTOT_RI_CNVI(I1(II),I2(II),I3(II)) + Z_RI_CNVI(II) * ZMAXTIME(II) + ZTOT_CI_CNVI(I1(II),I2(II),I3(II)) = ZTOT_CI_CNVI(I1(II),I2(II),I3(II)) + Z_CI_CNVI(II) * ZMAXTIME(II) + ZTOT_TH_DEPS(I1(II),I2(II),I3(II)) = ZTOT_TH_DEPS(I1(II),I2(II),I3(II)) + Z_TH_DEPS(II) * ZMAXTIME(II) + ZTOT_RS_DEPS(I1(II),I2(II),I3(II)) = ZTOT_RS_DEPS(I1(II),I2(II),I3(II)) + Z_RS_DEPS(II) * ZMAXTIME(II) + ZTOT_RI_CNVS(I1(II),I2(II),I3(II)) = ZTOT_RI_CNVS(I1(II),I2(II),I3(II)) + Z_RI_CNVS(II) * ZMAXTIME(II) + ZTOT_CI_CNVS(I1(II),I2(II),I3(II)) = ZTOT_CI_CNVS(I1(II),I2(II),I3(II)) + Z_CI_CNVS(II) * ZMAXTIME(II) + ZTOT_RI_AGGS(I1(II),I2(II),I3(II)) = ZTOT_RI_AGGS(I1(II),I2(II),I3(II)) + Z_RI_AGGS(II) * ZMAXTIME(II) + ZTOT_CI_AGGS(I1(II),I2(II),I3(II)) = ZTOT_CI_AGGS(I1(II),I2(II),I3(II)) + Z_CI_AGGS(II) * ZMAXTIME(II) + ZTOT_TH_DEPG(I1(II),I2(II),I3(II)) = ZTOT_TH_DEPG(I1(II),I2(II),I3(II)) + Z_TH_DEPG(II) * ZMAXTIME(II) + ZTOT_RG_DEPG(I1(II),I2(II),I3(II)) = ZTOT_RG_DEPG(I1(II),I2(II),I3(II)) + Z_RG_DEPG(II) * ZMAXTIME(II) + ZTOT_TH_BERFI(I1(II),I2(II),I3(II))= ZTOT_TH_BERFI(I1(II),I2(II),I3(II)) + Z_TH_BERFI(II) * ZMAXTIME(II) + ZTOT_RC_BERFI(I1(II),I2(II),I3(II))= ZTOT_RC_BERFI(I1(II),I2(II),I3(II)) + Z_RC_BERFI(II) * ZMAXTIME(II) + ZTOT_TH_RIM(I1(II),I2(II),I3(II)) = ZTOT_TH_RIM(I1(II),I2(II),I3(II)) + Z_TH_RIM(II) * ZMAXTIME(II) + ZTOT_RC_RIM(I1(II),I2(II),I3(II)) = ZTOT_RC_RIM(I1(II),I2(II),I3(II)) + Z_RC_RIM(II) * ZMAXTIME(II) + ZTOT_CC_RIM(I1(II),I2(II),I3(II)) = ZTOT_CC_RIM(I1(II),I2(II),I3(II)) + Z_CC_RIM(II) * ZMAXTIME(II) + ZTOT_RS_RIM(I1(II),I2(II),I3(II)) = ZTOT_RS_RIM(I1(II),I2(II),I3(II)) + Z_RS_RIM(II) * ZMAXTIME(II) + ZTOT_RG_RIM(I1(II),I2(II),I3(II)) = ZTOT_RG_RIM(I1(II),I2(II),I3(II)) + Z_RG_RIM(II) * ZMAXTIME(II) + ZTOT_RI_HMS(I1(II),I2(II),I3(II)) = ZTOT_RI_HMS(I1(II),I2(II),I3(II)) + Z_RI_HMS(II) * ZMAXTIME(II) + ZTOT_CI_HMS(I1(II),I2(II),I3(II)) = ZTOT_CI_HMS(I1(II),I2(II),I3(II)) + Z_CI_HMS(II) * ZMAXTIME(II) + ZTOT_RS_HMS(I1(II),I2(II),I3(II)) = ZTOT_RS_HMS(I1(II),I2(II),I3(II)) + Z_RS_HMS(II) * ZMAXTIME(II) + ZTOT_TH_ACC(I1(II),I2(II),I3(II)) = ZTOT_TH_ACC(I1(II),I2(II),I3(II)) + Z_TH_ACC(II) * ZMAXTIME(II) + ZTOT_RR_ACC(I1(II),I2(II),I3(II)) = ZTOT_RR_ACC(I1(II),I2(II),I3(II)) + Z_RR_ACC(II) * ZMAXTIME(II) + ZTOT_CR_ACC(I1(II),I2(II),I3(II)) = ZTOT_CR_ACC(I1(II),I2(II),I3(II)) + Z_CR_ACC(II) * ZMAXTIME(II) + ZTOT_RS_ACC(I1(II),I2(II),I3(II)) = ZTOT_RS_ACC(I1(II),I2(II),I3(II)) + Z_RS_ACC(II) * ZMAXTIME(II) + ZTOT_RG_ACC(I1(II),I2(II),I3(II)) = ZTOT_RG_ACC(I1(II),I2(II),I3(II)) + Z_RG_ACC(II) * ZMAXTIME(II) + ZTOT_RS_CMEL(I1(II),I2(II),I3(II)) = ZTOT_RS_CMEL(I1(II),I2(II),I3(II)) + Z_RS_CMEL(II) * ZMAXTIME(II) + ZTOT_TH_CFRZ(I1(II),I2(II),I3(II)) = ZTOT_TH_CFRZ(I1(II),I2(II),I3(II)) + Z_TH_CFRZ(II) * ZMAXTIME(II) + ZTOT_RR_CFRZ(I1(II),I2(II),I3(II)) = ZTOT_RR_CFRZ(I1(II),I2(II),I3(II)) + Z_RR_CFRZ(II) * ZMAXTIME(II) + ZTOT_CR_CFRZ(I1(II),I2(II),I3(II)) = ZTOT_CR_CFRZ(I1(II),I2(II),I3(II)) + Z_CR_CFRZ(II) * ZMAXTIME(II) + ZTOT_RI_CFRZ(I1(II),I2(II),I3(II)) = ZTOT_RI_CFRZ(I1(II),I2(II),I3(II)) + Z_RI_CFRZ(II) * ZMAXTIME(II) + ZTOT_CI_CFRZ(I1(II),I2(II),I3(II)) = ZTOT_CI_CFRZ(I1(II),I2(II),I3(II)) + Z_CI_CFRZ(II) * ZMAXTIME(II) + ZTOT_TH_WETG(I1(II),I2(II),I3(II)) = ZTOT_TH_WETG(I1(II),I2(II),I3(II)) + Z_TH_WETG(II) * ZMAXTIME(II) + ZTOT_RC_WETG(I1(II),I2(II),I3(II)) = ZTOT_RC_WETG(I1(II),I2(II),I3(II)) + Z_RC_WETG(II) * ZMAXTIME(II) + ZTOT_CC_WETG(I1(II),I2(II),I3(II)) = ZTOT_CC_WETG(I1(II),I2(II),I3(II)) + Z_CC_WETG(II) * ZMAXTIME(II) + ZTOT_RR_WETG(I1(II),I2(II),I3(II)) = ZTOT_RR_WETG(I1(II),I2(II),I3(II)) + Z_RR_WETG(II) * ZMAXTIME(II) + ZTOT_CR_WETG(I1(II),I2(II),I3(II)) = ZTOT_CR_WETG(I1(II),I2(II),I3(II)) + Z_CR_WETG(II) * ZMAXTIME(II) + ZTOT_RI_WETG(I1(II),I2(II),I3(II)) = ZTOT_RI_WETG(I1(II),I2(II),I3(II)) + Z_RI_WETG(II) * ZMAXTIME(II) + ZTOT_CI_WETG(I1(II),I2(II),I3(II)) = ZTOT_CI_WETG(I1(II),I2(II),I3(II)) + Z_CI_WETG(II) * ZMAXTIME(II) + ZTOT_RS_WETG(I1(II),I2(II),I3(II)) = ZTOT_RS_WETG(I1(II),I2(II),I3(II)) + Z_RS_WETG(II) * ZMAXTIME(II) + ZTOT_RG_WETG(I1(II),I2(II),I3(II)) = ZTOT_RG_WETG(I1(II),I2(II),I3(II)) + Z_RG_WETG(II) * ZMAXTIME(II) + ZTOT_RH_WETG(I1(II),I2(II),I3(II)) = ZTOT_RH_WETG(I1(II),I2(II),I3(II)) + Z_RH_WETG(II) * ZMAXTIME(II) + ZTOT_TH_DRYG(I1(II),I2(II),I3(II)) = ZTOT_TH_DRYG(I1(II),I2(II),I3(II)) + Z_TH_DRYG(II) * ZMAXTIME(II) + ZTOT_RC_DRYG(I1(II),I2(II),I3(II)) = ZTOT_RC_DRYG(I1(II),I2(II),I3(II)) + Z_RC_DRYG(II) * ZMAXTIME(II) + ZTOT_CC_DRYG(I1(II),I2(II),I3(II)) = ZTOT_CC_DRYG(I1(II),I2(II),I3(II)) + Z_CC_DRYG(II) * ZMAXTIME(II) + ZTOT_RR_DRYG(I1(II),I2(II),I3(II)) = ZTOT_RR_DRYG(I1(II),I2(II),I3(II)) + Z_RR_DRYG(II) * ZMAXTIME(II) + ZTOT_CR_DRYG(I1(II),I2(II),I3(II)) = ZTOT_CR_DRYG(I1(II),I2(II),I3(II)) + Z_CR_DRYG(II) * ZMAXTIME(II) + ZTOT_RI_DRYG(I1(II),I2(II),I3(II)) = ZTOT_RI_DRYG(I1(II),I2(II),I3(II)) + Z_RI_DRYG(II) * ZMAXTIME(II) + ZTOT_CI_DRYG(I1(II),I2(II),I3(II)) = ZTOT_CI_DRYG(I1(II),I2(II),I3(II)) + Z_CI_DRYG(II) * ZMAXTIME(II) + ZTOT_RS_DRYG(I1(II),I2(II),I3(II)) = ZTOT_RS_DRYG(I1(II),I2(II),I3(II)) + Z_RS_DRYG(II) * ZMAXTIME(II) + ZTOT_RG_DRYG(I1(II),I2(II),I3(II)) = ZTOT_RG_DRYG(I1(II),I2(II),I3(II)) + Z_RG_DRYG(II) * ZMAXTIME(II) + ZTOT_RI_HMG(I1(II),I2(II),I3(II)) = ZTOT_RI_HMG(I1(II),I2(II),I3(II)) + Z_RI_HMG(II) * ZMAXTIME(II) + ZTOT_CI_HMG(I1(II),I2(II),I3(II)) = ZTOT_CI_HMG(I1(II),I2(II),I3(II)) + Z_CI_HMG(II) * ZMAXTIME(II) + ZTOT_RG_HMG(I1(II),I2(II),I3(II)) = ZTOT_RG_HMG(I1(II),I2(II),I3(II)) + Z_RG_HMG(II) * ZMAXTIME(II) + ZTOT_TH_GMLT(I1(II),I2(II),I3(II)) = ZTOT_TH_GMLT(I1(II),I2(II),I3(II)) + Z_TH_GMLT(II) * ZMAXTIME(II) + ZTOT_RR_GMLT(I1(II),I2(II),I3(II)) = ZTOT_RR_GMLT(I1(II),I2(II),I3(II)) + Z_RR_GMLT(II) * ZMAXTIME(II) + ZTOT_CR_GMLT(I1(II),I2(II),I3(II)) = ZTOT_CR_GMLT(I1(II),I2(II),I3(II)) + Z_CR_GMLT(II) * ZMAXTIME(II) +!!$ ZTOT_RC_WETH(I1(II),I2(II),I3(II)) = ZTOT_RC_WETH(I1(II),I2(II),I3(II)) + Z_RC_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_CC_WETH(I1(II),I2(II),I3(II)) = ZTOT_CC_WETH(I1(II),I2(II),I3(II)) + Z_CC_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RR_WETH(I1(II),I2(II),I3(II)) = ZTOT_RR_WETH(I1(II),I2(II),I3(II)) + Z_RR_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_CR_WETH(I1(II),I2(II),I3(II)) = ZTOT_CR_WETH(I1(II),I2(II),I3(II)) + Z_CR_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RI_WETH(I1(II),I2(II),I3(II)) = ZTOT_RI_WETH(I1(II),I2(II),I3(II)) + Z_RI_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_CI_WETH(I1(II),I2(II),I3(II)) = ZTOT_CI_WETH(I1(II),I2(II),I3(II)) + Z_CI_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RS_WETH(I1(II),I2(II),I3(II)) = ZTOT_RS_WETH(I1(II),I2(II),I3(II)) + Z_RS_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RG_WETH(I1(II),I2(II),I3(II)) = ZTOT_RG_WETH(I1(II),I2(II),I3(II)) + Z_RG_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RH_WETH(I1(II),I2(II),I3(II)) = ZTOT_RH_WETH(I1(II),I2(II),I3(II)) + Z_RH_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RG_COHG(I1(II),I2(II),I3(II)) = ZTOT_RG_COHG(I1(II),I2(II),I3(II)) + Z_RG_COHG(II) * ZMAXTIME(II) +!!$ ZTOT_RR_HMLT(I1(II),I2(II),I3(II)) = ZTOT_RR_HMLT(I1(II),I2(II),I3(II)) + Z_RR_HMLT(II) * ZMAXTIME(II) +!!$ ZTOT_CR_HMLT(I1(II),I2(II),I3(II)) = ZTOT_CR_HMLT(I1(II),I2(II),I3(II)) + Z_CR_HMLT(II) * ZMAXTIME(II) + END DO + ENDIF + ! + ! Deallocating variables + ! + DEALLOCATE(I1) + DEALLOCATE(I2) + DEALLOCATE(I3) + DEALLOCATE(ZRHODREF1D) + DEALLOCATE(ZEXNREF1D) + DEALLOCATE(ZEXN1D) + DEALLOCATE(ZP1D) + DEALLOCATE(ZTHT1D) + DEALLOCATE(ZRVT1D) + DEALLOCATE(ZRCT1D) + DEALLOCATE(ZRRT1D) + DEALLOCATE(ZRIT1D) + DEALLOCATE(ZRST1D) + DEALLOCATE(ZRGT1D) + DEALLOCATE(ZRHT1D) + DEALLOCATE(ZCCT1D) + DEALLOCATE(ZCRT1D) + DEALLOCATE(ZCIT1D) + DEALLOCATE(ZIFNN1D) + DEALLOCATE(ZEVAP1D) + DEALLOCATE(ZTIME1D) + DEALLOCATE(LLCOMPUTE1D) + DEALLOCATE(IITER1D) + DEALLOCATE(ZTIME_LASTCALL1D) + DEALLOCATE(Z0RVT1D) + DEALLOCATE(Z0RCT1D) + DEALLOCATE(Z0RRT1D) + DEALLOCATE(Z0RIT1D) + DEALLOCATE(Z0RST1D) + DEALLOCATE(Z0RGT1D) + DEALLOCATE(Z0RHT1D) + ! + DEALLOCATE(ZMAXTIME) + DEALLOCATE(ZTIME_THRESHOLD) + ! + DEALLOCATE(ZA_TH) + DEALLOCATE(ZA_RV) + DEALLOCATE(ZA_RC) + DEALLOCATE(ZA_RR) + DEALLOCATE(ZA_RI) + DEALLOCATE(ZA_RS) + DEALLOCATE(ZA_RG) + DEALLOCATE(ZA_RH) + DEALLOCATE(ZA_CC) + DEALLOCATE(ZA_CR) + DEALLOCATE(ZA_CI) + ! + DEALLOCATE(ZB_TH) + DEALLOCATE(ZB_RV) + DEALLOCATE(ZB_RC) + DEALLOCATE(ZB_RR) + DEALLOCATE(ZB_RI) + DEALLOCATE(ZB_RS) + DEALLOCATE(ZB_RG) + DEALLOCATE(ZB_RH) + DEALLOCATE(ZB_CC) + DEALLOCATE(ZB_CR) + DEALLOCATE(ZB_CI) + DEALLOCATE(ZB_IFNN) + ! + DEALLOCATE(Z_CR_BRKU) + DEALLOCATE(Z_TH_HONR) + DEALLOCATE(Z_RR_HONR) + DEALLOCATE(Z_CR_HONR) + DEALLOCATE(Z_TH_IMLT) + DEALLOCATE(Z_RC_IMLT) + DEALLOCATE(Z_CC_IMLT) + DEALLOCATE(Z_TH_HONC) + DEALLOCATE(Z_RC_HONC) + DEALLOCATE(Z_CC_HONC) + DEALLOCATE(Z_CC_SELF) + DEALLOCATE(Z_RC_AUTO) + DEALLOCATE(Z_CC_AUTO) + DEALLOCATE(Z_CR_AUTO) + DEALLOCATE(Z_RC_ACCR) + DEALLOCATE(Z_CC_ACCR) + DEALLOCATE(Z_CR_SCBU) + DEALLOCATE(Z_TH_EVAP) + DEALLOCATE(Z_RR_EVAP) + DEALLOCATE(Z_RI_CNVI) + DEALLOCATE(Z_CI_CNVI) + DEALLOCATE(Z_TH_DEPS) + DEALLOCATE(Z_RS_DEPS) + DEALLOCATE(Z_RI_CNVS) + DEALLOCATE(Z_CI_CNVS) + DEALLOCATE(Z_RI_AGGS) + DEALLOCATE(Z_CI_AGGS) + DEALLOCATE(Z_TH_DEPG) + DEALLOCATE(Z_RG_DEPG) + DEALLOCATE(Z_TH_BERFI) + DEALLOCATE(Z_RC_BERFI) + DEALLOCATE(Z_TH_RIM) + DEALLOCATE(Z_RC_RIM) + DEALLOCATE(Z_CC_RIM) + DEALLOCATE(Z_RS_RIM) + DEALLOCATE(Z_RG_RIM) + DEALLOCATE(Z_RI_HMS) + DEALLOCATE(Z_CI_HMS) + DEALLOCATE(Z_RS_HMS) + DEALLOCATE(Z_TH_ACC) + DEALLOCATE(Z_RR_ACC) + DEALLOCATE(Z_CR_ACC) + DEALLOCATE(Z_RS_ACC) + DEALLOCATE(Z_RG_ACC) + DEALLOCATE(Z_RS_CMEL) + DEALLOCATE(Z_TH_CFRZ) + DEALLOCATE(Z_RR_CFRZ) + DEALLOCATE(Z_CR_CFRZ) + DEALLOCATE(Z_RI_CFRZ) + DEALLOCATE(Z_CI_CFRZ) + DEALLOCATE(Z_TH_WETG) + DEALLOCATE(Z_RC_WETG) + DEALLOCATE(Z_CC_WETG) + DEALLOCATE(Z_RR_WETG) + DEALLOCATE(Z_CR_WETG) + DEALLOCATE(Z_RI_WETG) + DEALLOCATE(Z_CI_WETG) + DEALLOCATE(Z_RS_WETG) + DEALLOCATE(Z_RG_WETG) + DEALLOCATE(Z_RH_WETG) + DEALLOCATE(Z_TH_DRYG) + DEALLOCATE(Z_RC_DRYG) + DEALLOCATE(Z_CC_DRYG) + DEALLOCATE(Z_RR_DRYG) + DEALLOCATE(Z_CR_DRYG) + DEALLOCATE(Z_RI_DRYG) + DEALLOCATE(Z_CI_DRYG) + DEALLOCATE(Z_RS_DRYG) + DEALLOCATE(Z_RG_DRYG) + DEALLOCATE(Z_RI_HMG) + DEALLOCATE(Z_CI_HMG) + DEALLOCATE(Z_RG_HMG) + DEALLOCATE(Z_TH_GMLT) + DEALLOCATE(Z_RR_GMLT) + DEALLOCATE(Z_CR_GMLT) + ! + ENDDO +ENDDO +! +!------------------------------------------------------------------------------- +! +!* 7. TOTAL TENDENCIES +! ---------------- +! +! Source at the end of microphysics = new state / PTSTEP +! +PTHS(:,:,:) = ZTHT(:,:,:) * ZINV_TSTEP +! +PRS(:,:,:,1) = ZRVT(:,:,:) *ZINV_TSTEP +IF ( KRR .GE. 2 ) PRS(:,:,:,2) = ZRCT(:,:,:) *ZINV_TSTEP +IF ( KRR .GE. 3 ) PRS(:,:,:,3) = ZRRT(:,:,:) *ZINV_TSTEP +IF ( KRR .GE. 4 ) PRS(:,:,:,4) = ZRIT(:,:,:) *ZINV_TSTEP +IF ( KRR .GE. 5 ) PRS(:,:,:,5) = ZRST(:,:,:) *ZINV_TSTEP +IF ( KRR .GE. 6 ) PRS(:,:,:,6) = ZRGT(:,:,:) *ZINV_TSTEP +IF ( KRR .GE. 7 ) PRS(:,:,:,7) = ZRHT(:,:,:) *ZINV_TSTEP +! +IF ( LWARM ) PSVS(:,:,:,NSV_LIMA_NC) = ZCCT(:,:,:) *ZINV_TSTEP +IF ( LWARM .AND. LRAIN ) PSVS(:,:,:,NSV_LIMA_NR) = ZCRT(:,:,:) *ZINV_TSTEP +IF ( LCOLD ) PSVS(:,:,:,NSV_LIMA_NI) = ZCIT(:,:,:) *ZINV_TSTEP +! +IF ( NMOD_CCN .GE. 1 ) PSVS(:,:,:,NSV_LIMA_CCN_FREE:NSV_LIMA_CCN_FREE+NMOD_CCN-1) = ZCCNFT(:,:,:,:) *ZINV_TSTEP +IF ( NMOD_CCN .GE. 1 ) PSVS(:,:,:,NSV_LIMA_CCN_ACTI:NSV_LIMA_CCN_ACTI+NMOD_CCN-1) = ZCCNAT(:,:,:,:) *ZINV_TSTEP +IF ( NMOD_IFN .GE. 1 ) PSVS(:,:,:,NSV_LIMA_IFN_FREE:NSV_LIMA_IFN_FREE+NMOD_IFN-1) = ZIFNFT(:,:,:,:) *ZINV_TSTEP +IF ( NMOD_IFN .GE. 1 ) PSVS(:,:,:,NSV_LIMA_IFN_NUCL:NSV_LIMA_IFN_NUCL+NMOD_IFN-1) = ZIFNNT(:,:,:,:) *ZINV_TSTEP +IF ( NMOD_IMM .GE. 1 ) PSVS(:,:,:,NSV_LIMA_IMM_NUCL:NSV_LIMA_IMM_NUCL+NMOD_IMM-1) = ZIMMNT(:,:,:,:) *ZINV_TSTEP +IF ( LCOLD .AND. LHHONI) PSVS(:,:,:,NSV_LIMA_HOM_HAZE) = ZHOMFT(:,:,:) *ZINV_TSTEP +! +! +! +! Call budgets +! +IF(LBU_ENABLE) THEN + IF (LBUDGET_TH) THEN + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_EVAP(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'REVA_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_HONC(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'HONC_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_HONR(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'HONR_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_DEPS(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'DEPS_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_DEPG(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'DEPG_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_IMLT(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'IMLT_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_BERFI(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'BERFI_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_RIM(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'RIM_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_ACC(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'ACC_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_CFRZ(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'CFRZ_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_WETG(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'WETG_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_DRYG(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'DRYG_BU_RTH') + ZTHS(:,:,:) = ZTHS(:,:,:) + ZTOT_TH_GMLT(:,:,:)/PTSTEP + CALL BUDGET (ZTHS(:,:,:)*PRHODJ(:,:,:), 4 , 'GMLT_BU_RTH') + END IF + + IF (LBUDGET_RV) THEN + ZRVS(:,:,:) = ZRVS(:,:,:) - ZTOT_RR_EVAP(:,:,:)/PTSTEP + CALL BUDGET (ZRVS(:,:,:)*PRHODJ(:,:,:), 6 , 'REVA_BU_RRV') + ZRVS(:,:,:) = ZRVS(:,:,:) - ZTOT_RS_DEPS(:,:,:)/PTSTEP + CALL BUDGET (ZRVS(:,:,:)*PRHODJ(:,:,:), 6 , 'DEPS_BU_RRV') + ZRVS(:,:,:) = ZRVS(:,:,:) - ZTOT_RG_DEPG(:,:,:)/PTSTEP + CALL BUDGET (ZRVS(:,:,:)*PRHODJ(:,:,:), 6 , 'DEPG_BU_RRV') + END IF + + IF (LBUDGET_RC) THEN + ZRCS(:,:,:) = ZRCS(:,:,:) + ZTOT_RC_AUTO(:,:,:)/PTSTEP + CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'AUTO_BU_RRC') + ZRCS(:,:,:) = ZRCS(:,:,:) + ZTOT_RC_ACCR(:,:,:)/PTSTEP + CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'ACCR_BU_RRC') + ! impact of rain evap !!!!!! + ZRCS(:,:,:) = ZRCS(:,:,:) + CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'REVA_BU_RRC') + ZRCS(:,:,:) = ZRCS(:,:,:) + ZTOT_RC_HONC(:,:,:)/PTSTEP + CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'HONC_BU_RRC') + ZRCS(:,:,:) = ZRCS(:,:,:) + ZTOT_RC_IMLT(:,:,:)/PTSTEP + CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'IMLT_BU_RRC') + ZRCS(:,:,:) = ZRCS(:,:,:) + ZTOT_RC_BERFI(:,:,:)/PTSTEP + CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'BERFI_BU_RRC') + ZRCS(:,:,:) = ZRCS(:,:,:) + ZTOT_RC_RIM(:,:,:)/PTSTEP + CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'RIM_BU_RRC') + ZRCS(:,:,:) = ZRCS(:,:,:) + ZTOT_RC_WETG(:,:,:)/PTSTEP + CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'WETG_BU_RRC') + ZRCS(:,:,:) = ZRCS(:,:,:) + ZTOT_RC_DRYG(:,:,:)/PTSTEP + CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'DRYG_BU_RRC') + ZRCS(:,:,:) = ZRCS(:,:,:) - ZTOT_RR_CVRC(:,:,:)/PTSTEP + CALL BUDGET (ZRCS(:,:,:)*PRHODJ(:,:,:), 7 , 'CVRC_BU_RRC') + END IF + + IF (LBUDGET_RR) THEN + ZRRS(:,:,:) = ZRRS(:,:,:) - ZTOT_RC_AUTO(:,:,:)/PTSTEP + CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'AUTO_BU_RRR') + ZRRS(:,:,:) = ZRRS(:,:,:) - ZTOT_RC_ACCR(:,:,:)/PTSTEP + CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'ACCR_BU_RRR') + ZRRS(:,:,:) = ZRRS(:,:,:) + ZTOT_RR_EVAP(:,:,:)/PTSTEP + CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'REVA_BU_RRR') + ZRRS(:,:,:) = ZRRS(:,:,:) + ZTOT_RR_HONR(:,:,:)/PTSTEP + CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'HONR_BU_RRR') + ZRRS(:,:,:) = ZRRS(:,:,:) + ZTOT_RR_ACC(:,:,:)/PTSTEP + CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'ACC_BU_RRR') + ZRRS(:,:,:) = ZRRS(:,:,:) + ZTOT_RR_CFRZ(:,:,:)/PTSTEP + CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'CFRZ_BU_RRR') + ZRRS(:,:,:) = ZRRS(:,:,:) + ZTOT_RR_WETG(:,:,:)/PTSTEP + CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'WETG_BU_RRR') + ZRRS(:,:,:) = ZRRS(:,:,:) + ZTOT_RR_DRYG(:,:,:)/PTSTEP + CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'DRYG_BU_RRR') + ZRRS(:,:,:) = ZRRS(:,:,:) + ZTOT_RR_GMLT(:,:,:)/PTSTEP + CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'GMLT_BU_RRR') + ZRRS(:,:,:) = ZRRS(:,:,:) + ZTOT_RR_CVRC(:,:,:)/PTSTEP + CALL BUDGET (ZRRS(:,:,:)*PRHODJ(:,:,:), 8 , 'CVRC_BU_RRR') + END IF + + IF (LBUDGET_RI) THEN + ZRIS(:,:,:) = ZRIS(:,:,:) - ZTOT_RC_HONC(:,:,:)/PTSTEP + CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'HONC_BU_RRI') + ZRIS(:,:,:) = ZRIS(:,:,:) + ZTOT_RI_CNVI(:,:,:)/PTSTEP + CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'CNVI_BU_RRI') + ZRIS(:,:,:) = ZRIS(:,:,:) + ZTOT_RI_CNVS(:,:,:)/PTSTEP + CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'CNVS_BU_RRI') + ZRIS(:,:,:) = ZRIS(:,:,:) + ZTOT_RI_AGGS(:,:,:)/PTSTEP + CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'AGGS_BU_RRI') + ZRIS(:,:,:) = ZRIS(:,:,:) - ZTOT_RC_IMLT(:,:,:)/PTSTEP + CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'IMLT_BU_RRI') + ZRIS(:,:,:) = ZRIS(:,:,:) - ZTOT_RC_BERFI(:,:,:)/PTSTEP + CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'BERFI_BU_RRI') + ZRIS(:,:,:) = ZRIS(:,:,:) + ZTOT_RI_HMS(:,:,:)/PTSTEP + CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'HMS_BU_RRI') + ZRIS(:,:,:) = ZRIS(:,:,:) + ZTOT_RI_CFRZ(:,:,:)/PTSTEP + CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'CFRZ_BU_RRI') + ZRIS(:,:,:) = ZRIS(:,:,:) + ZTOT_RI_WETG(:,:,:)/PTSTEP + CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'WETG_BU_RRI') + ZRIS(:,:,:) = ZRIS(:,:,:) + ZTOT_RI_DRYG(:,:,:)/PTSTEP + CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'DRYG_BU_RRI') + ZRIS(:,:,:) = ZRIS(:,:,:) + ZTOT_RI_HMG(:,:,:)/PTSTEP + CALL BUDGET (ZRIS(:,:,:)*PRHODJ(:,:,:), 9 , 'HMG_BU_RRI') + END IF + + IF (LBUDGET_RS) THEN + ZRSS(:,:,:) = ZRSS(:,:,:) - ZTOT_RI_CNVI(:,:,:)/PTSTEP + CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:), 10 , 'CNVI_BU_RRS') + ZRSS(:,:,:) = ZRSS(:,:,:) + ZTOT_RS_DEPS(:,:,:)/PTSTEP + CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:), 10 , 'DEPS_BU_RRS') + ZRSS(:,:,:) = ZRSS(:,:,:) - ZTOT_RI_CNVS(:,:,:)/PTSTEP + CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:), 10 , 'CNVS_BU_RRS') + ZRSS(:,:,:) = ZRSS(:,:,:) - ZTOT_RI_AGGS(:,:,:)/PTSTEP + CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:), 10 , 'AGGS_BU_RRS') + ZRSS(:,:,:) = ZRSS(:,:,:) + ZTOT_RS_RIM(:,:,:)/PTSTEP + CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:), 10 , 'RIM_BU_RRS') + ZRSS(:,:,:) = ZRSS(:,:,:) + ZTOT_RS_HMS(:,:,:)/PTSTEP + CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:), 10 , 'HMS_BU_RRS') + ZRSS(:,:,:) = ZRSS(:,:,:) + ZTOT_RS_ACC(:,:,:)/PTSTEP + CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:), 10 , 'ACC_BU_RRS') + ZRSS(:,:,:) = ZRSS(:,:,:) + ZTOT_RS_CMEL(:,:,:)/PTSTEP + CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:), 10 , 'CMEL_BU_RRS') + ZRSS(:,:,:) = ZRSS(:,:,:) + ZTOT_RS_WETG(:,:,:)/PTSTEP + CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:), 10 , 'WETG_BU_RRS') + ZRSS(:,:,:) = ZRSS(:,:,:) + ZTOT_RS_DRYG(:,:,:)/PTSTEP + CALL BUDGET (ZRSS(:,:,:)*PRHODJ(:,:,:), 10 , 'DRYG_BU_RRS') + END IF + + IF (LBUDGET_RG) THEN + ZRGS(:,:,:) = ZRGS(:,:,:) - ZTOT_RR_HONR(:,:,:)/PTSTEP + CALL BUDGET (ZRGS(:,:,:)*PRHODJ(:,:,:), 11 , 'HONR_BU_RRG') + ZRGS(:,:,:) = ZRGS(:,:,:) + ZTOT_RG_DEPG(:,:,:)/PTSTEP + CALL BUDGET (ZRGS(:,:,:)*PRHODJ(:,:,:), 11 , 'DEPG_BU_RRG') + ZRGS(:,:,:) = ZRGS(:,:,:) + ZTOT_RG_RIM(:,:,:)/PTSTEP + CALL BUDGET (ZRGS(:,:,:)*PRHODJ(:,:,:), 11 , 'RIM_BU_RRG') + ZRGS(:,:,:) = ZRGS(:,:,:) + ZTOT_RG_ACC(:,:,:)/PTSTEP + CALL BUDGET (ZRGS(:,:,:)*PRHODJ(:,:,:), 11 , 'ACC_BU_RRG') + ZRGS(:,:,:) = ZRGS(:,:,:) - ZTOT_RS_CMEL(:,:,:)/PTSTEP + CALL BUDGET (ZRGS(:,:,:)*PRHODJ(:,:,:), 11 , 'CMEL_BU_RRG') + ZRGS(:,:,:) = ZRGS(:,:,:) - ZTOT_RR_CFRZ(:,:,:)/PTSTEP - ZTOT_RI_CFRZ(:,:,:)/PTSTEP + CALL BUDGET (ZRGS(:,:,:)*PRHODJ(:,:,:), 11 , 'CFRZ_BU_RRG') + ZRGS(:,:,:) = ZRGS(:,:,:) + ZTOT_RG_WETG(:,:,:)/PTSTEP + CALL BUDGET (ZRGS(:,:,:)*PRHODJ(:,:,:), 11 , 'WETG_BU_RRG') + ZRGS(:,:,:) = ZRGS(:,:,:) + ZTOT_RG_DRYG(:,:,:)/PTSTEP + CALL BUDGET (ZRGS(:,:,:)*PRHODJ(:,:,:), 11 , 'DRYG_BU_RRG') + ZRGS(:,:,:) = ZRGS(:,:,:) + ZTOT_RG_HMG(:,:,:)/PTSTEP + CALL BUDGET (ZRGS(:,:,:)*PRHODJ(:,:,:), 11 , 'HMG_BU_RRG') + ZRGS(:,:,:) = ZRGS(:,:,:) - ZTOT_RR_GMLT(:,:,:)/PTSTEP + CALL BUDGET (ZRGS(:,:,:)*PRHODJ(:,:,:), 11 , 'GMLT_BU_RRG') + END IF + + IF (LBUDGET_RH) THEN + ZRHS(:,:,:) = ZRHS(:,:,:) + ZTOT_RH_WETG(:,:,:)/PTSTEP + CALL BUDGET (ZRHS(:,:,:)*PRHODJ(:,:,:), 12 , 'WETG_BU_RRH') + END IF + + IF (LBUDGET_SV) THEN + ! + ! Cloud droplets + ! + ZCCS(:,:,:) = ZCCS(:,:,:) + ZTOT_CC_SELF(:,:,:)/PTSTEP + CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'SELF_BU_RSV') + ZCCS(:,:,:) = ZCCS(:,:,:) + ZTOT_CC_AUTO(:,:,:)/PTSTEP + CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'AUTO_BU_RSV') + ZCCS(:,:,:) = ZCCS(:,:,:) + ZTOT_CC_ACCR(:,:,:)/PTSTEP + CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'ACCR_BU_RSV') + ! impact of rain evap !!!!!! + ZCCS(:,:,:) = ZCCS(:,:,:) + CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'REVA_BU_RSV') + ZCCS(:,:,:) = ZCCS(:,:,:) + ZTOT_CC_HONC(:,:,:)/PTSTEP + CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'HONC_BU_RSV') + ZCCS(:,:,:) = ZCCS(:,:,:) + ZTOT_CC_IMLT(:,:,:)/PTSTEP + CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'IMLT_BU_RSV') + ZCCS(:,:,:) = ZCCS(:,:,:) + ZTOT_CC_RIM(:,:,:)/PTSTEP + CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'RIM_BU_RSV') + ZCCS(:,:,:) = ZCCS(:,:,:) + ZTOT_CC_WETG(:,:,:)/PTSTEP + CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'WETG_BU_RSV') + ZCCS(:,:,:) = ZCCS(:,:,:) + ZTOT_CC_DRYG(:,:,:)/PTSTEP + CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'DRYG_BU_RSV') + ZCCS(:,:,:) = ZCCS(:,:,:) - ZTOT_CR_CVRC(:,:,:)/PTSTEP + CALL BUDGET (ZCCS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NC , 'CVRC_BU_RSV') + ! + ! Rain drops + ! + ZCRS(:,:,:) = ZCRS(:,:,:) + ZTOT_CR_AUTO(:,:,:)/PTSTEP + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'AUTO_BU_RSV') + ZCRS(:,:,:) = ZCRS(:,:,:) + ZTOT_CR_SCBU(:,:,:)/PTSTEP + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'SCBU_BU_RSV') + ! Rain evaporation !!!!!!!!!!!!! + ZCRS(:,:,:) = ZCRS(:,:,:) + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'REVA_BU_RSV') + ZCRS(:,:,:) = ZCRS(:,:,:) + ZTOT_CR_BRKU(:,:,:)/PTSTEP + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'BRKU_BU_RSV') + ZCRS(:,:,:) = ZCRS(:,:,:) + ZTOT_CR_HONR(:,:,:)/PTSTEP + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'HONR_BU_RSV') + ZCRS(:,:,:) = ZCRS(:,:,:) + ZTOT_CR_ACC(:,:,:)/PTSTEP + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'ACC_BU_RSV') + ZCRS(:,:,:) = ZCRS(:,:,:) + ZTOT_CR_CFRZ(:,:,:)/PTSTEP + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'CFRZ_BU_RSV') + ZCRS(:,:,:) = ZCRS(:,:,:) + ZTOT_CR_WETG(:,:,:)/PTSTEP + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'WETG_BU_RSV') + ZCRS(:,:,:) = ZCRS(:,:,:) + ZTOT_CR_DRYG(:,:,:)/PTSTEP + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'DRYG_BU_RSV') + ZCRS(:,:,:) = ZCRS(:,:,:) + ZTOT_CR_GMLT(:,:,:)/PTSTEP + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'GMLT_BU_RSV') + ZCRS(:,:,:) = ZCRS(:,:,:) + ZTOT_CR_CVRC(:,:,:)/PTSTEP + CALL BUDGET (ZCRS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NR , 'CVRC_BU_RSV') + ! + ! Ice crystals + ! + ZCIS(:,:,:) = ZCIS(:,:,:) - ZTOT_CC_HONC(:,:,:)/PTSTEP + CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'HONC_BU_RSV') + ZCIS(:,:,:) = ZCIS(:,:,:) + ZTOT_CI_CNVI(:,:,:)/PTSTEP + CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'CNVI_BU_RSV') + ZCIS(:,:,:) = ZCIS(:,:,:) + ZTOT_CI_CNVS(:,:,:)/PTSTEP + CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'CNVS_BU_RSV') + ZCIS(:,:,:) = ZCIS(:,:,:) + ZTOT_CI_AGGS(:,:,:)/PTSTEP + CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'AGGS_BU_RSV') + ZCIS(:,:,:) = ZCIS(:,:,:) - ZTOT_CC_IMLT(:,:,:)/PTSTEP + CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'IMLT_BU_RSV') + ZCIS(:,:,:) = ZCIS(:,:,:) + ZTOT_CI_HMS(:,:,:)/PTSTEP + CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'HMS_BU_RSV') + ZCIS(:,:,:) = ZCIS(:,:,:) + ZTOT_CI_CFRZ(:,:,:)/PTSTEP + CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'CFRZ_BU_RSV') + ZCIS(:,:,:) = ZCIS(:,:,:) + ZTOT_CI_WETG(:,:,:)/PTSTEP + CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'WETG_BU_RSV') + ZCIS(:,:,:) = ZCIS(:,:,:) + ZTOT_CI_DRYG(:,:,:)/PTSTEP + CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'DRYG_BU_RSV') + ZCIS(:,:,:) = ZCIS(:,:,:) + ZTOT_CI_HMG(:,:,:)/PTSTEP + CALL BUDGET (ZCIS(:,:,:)*PRHODJ(:,:,:), 12+NSV_LIMA_NI , 'HMG_BU_RSV') + END IF +!!$ ZTOT_RC_EVAP(I1(II),I2(II),I3(II)) = ZTOT_RC_EVAP(I1(II),I2(II),I3(II)) + Z_RC_EVAP(II) * ZMAXTIME(II) +!!$ ZTOT_CC_EVAP(I1(II),I2(II),I3(II)) = ZTOT_CC_EVAP(I1(II),I2(II),I3(II)) + Z_CC_EVAP(II) * ZMAXTIME(II) +!!$ ZTOT_CR_EVAP(I1(II),I2(II),I3(II)) = ZTOT_CR_EVAP(I1(II),I2(II),I3(II)) + Z_CR_EVAP(II) * ZMAXTIME(II) + +!!$ ZTOT_RC_WETH(I1(II),I2(II),I3(II)) = ZTOT_RC_WETH(I1(II),I2(II),I3(II)) + Z_RC_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_CC_WETH(I1(II),I2(II),I3(II)) = ZTOT_CC_WETH(I1(II),I2(II),I3(II)) + Z_CC_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RR_WETH(I1(II),I2(II),I3(II)) = ZTOT_RR_WETH(I1(II),I2(II),I3(II)) + Z_RR_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_CR_WETH(I1(II),I2(II),I3(II)) = ZTOT_CR_WETH(I1(II),I2(II),I3(II)) + Z_CR_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RI_WETH(I1(II),I2(II),I3(II)) = ZTOT_RI_WETH(I1(II),I2(II),I3(II)) + Z_RI_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_CI_WETH(I1(II),I2(II),I3(II)) = ZTOT_CI_WETH(I1(II),I2(II),I3(II)) + Z_CI_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RS_WETH(I1(II),I2(II),I3(II)) = ZTOT_RS_WETH(I1(II),I2(II),I3(II)) + Z_RS_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RG_WETH(I1(II),I2(II),I3(II)) = ZTOT_RG_WETH(I1(II),I2(II),I3(II)) + Z_RG_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RH_WETH(I1(II),I2(II),I3(II)) = ZTOT_RH_WETH(I1(II),I2(II),I3(II)) + Z_RH_WETH(II) * ZMAXTIME(II) +!!$ ZTOT_RG_COHG(I1(II),I2(II),I3(II)) = ZTOT_RG_COHG(I1(II),I2(II),I3(II)) + Z_RG_COHG(II) * ZMAXTIME(II) +!!$ ZTOT_RR_HMLT(I1(II),I2(II),I3(II)) = ZTOT_RR_HMLT(I1(II),I2(II),I3(II)) + Z_RR_HMLT(II) * ZMAXTIME(II) +!!$ ZTOT_CR_HMLT(I1(II),I2(II),I3(II)) = ZTOT_CR_HMLT(I1(II),I2(II),I3(II)) + Z_CR_HMLT(II) * ZMAXTIME(II) + +END IF +! +END SUBROUTINE LIMA diff --git a/src/MNH/lima_bergeron.f90 b/src/MNH/lima_bergeron.f90 new file mode 100644 index 0000000000000000000000000000000000000000..9105c78d6f07be74f84fce86c33fe2c3a240f6e5 --- /dev/null +++ b/src/MNH/lima_bergeron.f90 @@ -0,0 +1,121 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_BERGERON +! ################################# +! +INTERFACE + SUBROUTINE LIMA_BERGERON (LDCOMPUTE, & + PRCT, PRIT, PCIT, PLBDI, & + PSSIW, PAI, PCJ, PLVFACT, PLSFACT, & + P_TH_BERFI, P_RC_BERFI, & + PA_TH, PA_RC, PA_RI ) +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDI ! +! +REAL, DIMENSION(:), INTENT(IN) :: PSSIW ! +REAL, DIMENSION(:), INTENT(IN) :: PAI ! +REAL, DIMENSION(:), INTENT(IN) :: PCJ ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_BERFI +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_BERFI +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +!! +END SUBROUTINE LIMA_BERGERON +END INTERFACE +END MODULE MODI_LIMA_BERGERON +! +! ############################################################# + SUBROUTINE LIMA_BERGERON( LDCOMPUTE, & + PRCT, PRIT, PCIT, PLBDI, & + PSSIW, PAI, PCJ, PLVFACT, PLSFACT, & + P_TH_BERFI, P_RC_BERFI, & + PA_TH, PA_RC, PA_RI ) +! ############################################################# +! +!! PURPOSE +!! ------- +!! Compute the Bergeron-Findeisen process rate +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN +USE MODD_PARAM_LIMA_COLD, ONLY : XDI, X0DEPI, X2DEPI +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDI ! +! +REAL, DIMENSION(:), INTENT(IN) :: PSSIW ! +REAL, DIMENSION(:), INTENT(IN) :: PAI ! +REAL, DIMENSION(:), INTENT(IN) :: PCJ ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_BERFI +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_BERFI +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +! +!* 0.2 Declarations of local variables : +! +! +!------------------------------------------------------------------------------- +! +! +!* 1. Bergeron-Findeisen process +! -------------------------- +! +P_TH_BERFI(:) = 0.0 +P_RC_BERFI(:) = 0.0 +! +WHERE( (PRCT(:)>XRTMIN(2)) .AND. (PRIT(:)>XRTMIN(4)) .AND. (PCIT(:)>XCTMIN(4)) .AND. LDCOMPUTE(:)) + P_RC_BERFI(:) = - ( PSSIW(:) / PAI(:) ) * PCIT(:) * & + ( X0DEPI/PLBDI(:)+X2DEPI*PCJ(:)*PCJ(:)/PLBDI(:)**(XDI+2.0) ) + P_TH_BERFI(:) = - P_RC_BERFI(:)*(PLSFACT(:)-PLVFACT(:)) +END WHERE +! +PA_RC(:) = PA_RC(:) + P_RC_BERFI(:) +PA_RI(:) = PA_RI(:) - P_RC_BERFI(:) +PA_TH(:) = PA_TH(:) + P_TH_BERFI(:) +! +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_BERGERON diff --git a/src/MNH/lima_ccn_activation.f90 b/src/MNH/lima_ccn_activation.f90 new file mode 100644 index 0000000000000000000000000000000000000000..cc3566ec5a2656bf96595a59961809abfb8eb038 --- /dev/null +++ b/src/MNH/lima_ccn_activation.f90 @@ -0,0 +1,798 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ############################### + MODULE MODI_LIMA_CCN_ACTIVATION +! ############################### +! +INTERFACE + SUBROUTINE LIMA_CCN_ACTIVATION (PTSTEP, TPFILE, OCLOSE_OUT, & + PRHODREF, PEXNREF, PPABST, ZT, ZTM, PW_NU, & + PTHT, PRVT, PRCT, PCCT, PRRT, PNFT, PNAT ) +USE MODD_IO_ll, ONLY: TFILEDATA +! +REAL, INTENT(IN) :: PTSTEP ! Double Time step + ! (single if cold start) +TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file +LOGICAL, INTENT(IN) :: OCLOSE_OUT ! Conditional closure of + ! the output FM file +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +REAL, DIMENSION(:,:,:), INTENT(IN) :: ZT ! Temperature +REAL, DIMENSION(:,:,:), INTENT(IN) :: ZTM ! Temperature at time t-dt +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PW_NU ! updraft velocity used for + ! the nucleation param. +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHT ! Theta at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNFT ! CCN C. available at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNAT ! CCN C. activated at t +! +END SUBROUTINE LIMA_CCN_ACTIVATION +END INTERFACE +END MODULE MODI_LIMA_CCN_ACTIVATION +! ############################################################################# + SUBROUTINE LIMA_CCN_ACTIVATION (PTSTEP, TPFILE, OCLOSE_OUT, & + PRHODREF, PEXNREF, PPABST, ZT, ZTM, PW_NU, & + PTHT, PRVT, PRCT, PCCT, PRRT, PNFT, PNAT ) +! ############################################################################# +! +!! +!! PURPOSE +!! ------- +!! The purpose of this routine is to compute the activation of CCN +!! according to Cohard and Pinty, QJRMS, 2000 +!! +!! +!!** METHOD +!! ------ +!! The activation of CCN is checked for quasi-saturated air parcels +!! to update the cloud droplet number concentration. +!! +!! Computation steps : +!! 1- Check where computations are necessary +!! 2- and 3- Compute the maximum of supersaturation using the iterative +!! Ridder algorithm +!! 4- Compute the nucleation source +!! 5- Deallocate local variables +!! +!! Contains : +!! 6- Functions : Ridder algorithm +!! +!! +!! REFERENCE +!! --------- +!! +!! Cohard, J.-M. and J.-P. Pinty, 2000: A comprehensive two-moment warm +!! microphysical bulk scheme. +!! Part I: Description and tests +!! Part II: 2D experiments with a non-hydrostatic model +!! Accepted for publication in Quart. J. Roy. Meteor. Soc. +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original ??/??/13 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAMETERS, ONLY : JPHEXT, JPVEXT +USE MODD_CST, ONLY : XALPW, XBETAW, XCL, XCPD, XCPV, XGAMW, XLVTT, XMD, XMV, XRV, XTT +USE MODD_PARAM_LIMA, ONLY : LACTIT, NMOD_CCN, XKHEN_MULTI, XCTMIN, XLIMIT_FACTOR +USE MODD_PARAM_LIMA_WARM, ONLY : XWMIN, NAHEN, NHYP, XAHENINTP1, XAHENINTP2, XCSTDCRIT, XHYPF12, & + XHYPINTP1, XHYPINTP2, XTMIN, XHYPF32, XPSI3, XAHENG, XPSI1 +! +USE MODI_GAMMA +USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV +! +USE MODD_IO_ll, ONLY: TFILEDATA +USE MODD_LUNIT_n, ONLY : TLUOUT +USE MODE_FIELD, ONLY : TFIELDDATA, TYPEREAL +USE MODE_FM +USE MODE_FMWRIT +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP ! Double Time step + ! (single if cold start) +TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file +LOGICAL, INTENT(IN) :: OCLOSE_OUT ! Conditional closure of + ! the output FM file +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +REAL, DIMENSION(:,:,:), INTENT(IN) :: ZT ! Temperature +REAL, DIMENSION(:,:,:), INTENT(IN) :: ZTM ! Temperature at time t-dt +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PW_NU ! updraft velocity used for + ! the nucleation param. +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHT ! Theta at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNFT ! CCN C. available at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNAT ! CCN C. activated at t +! +! +!* 0.1 Declarations of local variables : +! +! Packing variables +LOGICAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) :: GNUCT +INTEGER :: INUCT +INTEGER , DIMENSION(SIZE(GNUCT)) :: I1,I2,I3 ! Used to replace the COUNT +INTEGER :: JL ! and PACK intrinsics +! +! Packed micophysical variables +REAL, DIMENSION(:,:), ALLOCATABLE :: ZNFT ! available nucleus conc. source +REAL, DIMENSION(:,:), ALLOCATABLE :: ZNAT ! activated nucleus conc. source +! +! Other packed variables +REAL, DIMENSION(:) , ALLOCATABLE :: ZRHODREF ! RHO Dry REFerence +REAL, DIMENSION(:) , ALLOCATABLE :: ZEXNREF ! EXNer Pressure REFerence +REAL, DIMENSION(:) , ALLOCATABLE :: ZZT ! Temperature +! +! Work arrays +REAL, DIMENSION(:), ALLOCATABLE :: ZZW1, ZZW2, ZZW3, ZZW4, ZZW5, ZZW6, & + ZZTDT, & ! dT/dt + ZSW, & ! real supersaturation + ZSMAX, & ! Maximum supersaturation + ZVEC1 +! +REAL, DIMENSION(:,:), ALLOCATABLE :: ZTMP, ZCHEN_MULTI +! +REAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & + :: ZTDT, ZDRC, ZRVSAT, ZW, ZW2 +REAL, DIMENSION(SIZE(PNFT,1),SIZE(PNFT,2),SIZE(PNFT,3)) & + :: ZCONC_TOT ! total CCN C. available +! +INTEGER, DIMENSION(:), ALLOCATABLE :: IVEC1 ! Vectors of indices for + ! interpolations +! +! +REAL :: ZEPS ! molar mass ratio +REAL :: ZS1, ZS2, ZXACC +INTEGER :: JMOD +INTEGER :: IIB, IIE, IJB, IJE, IKB, IKE ! Physical domain +! +INTEGER :: ILUOUT ! Logical unit of output listing +TYPE(TFIELDDATA) :: TZFIELD +!------------------------------------------------------------------------------- +! +ILUOUT = TLUOUT%NLU +ZW(:,:,:)=0. +! +!* 1. PREPARE COMPUTATIONS - PACK +! --------------------------- +! +IIB=1+JPHEXT +IIE=SIZE(PRHODREF,1) - JPHEXT +IJB=1+JPHEXT +IJE=SIZE(PRHODREF,2) - JPHEXT +IKB=1+JPVEXT +IKE=SIZE(PRHODREF,3) - JPVEXT +! +! Saturation vapor mixing ratio and radiative tendency +! +ZEPS= XMV / XMD +ZRVSAT(:,:,:) = ZEPS / (PPABST(:,:,:)*EXP(-XALPW+XBETAW/ZT(:,:,:)+XGAMW*ALOG(ZT(:,:,:))) - 1.0) +ZTDT(:,:,:) = 0. +IF (LACTIT) ZTDT(:,:,:) = (ZT(:,:,:)-ZTM(:,:,:))/PTSTEP ! dT/dt +! +! find locations where CCN are available +! +ZCONC_TOT(:,:,:) = 0.0 +DO JMOD = 1, NMOD_CCN + ZCONC_TOT(:,:,:) = ZCONC_TOT(:,:,:) + PNFT(:,:,:,JMOD) ! sum over the free CCN +ENDDO +! +! optimization by looking for locations where +! the updraft velocity is positive!!! +! +GNUCT(:,:,:) = .FALSE. +! +! NEW : -22°C = limit sup for condensation freezing in Fridlin et al., 2007 +IF( LACTIT ) THEN + GNUCT(IIB:IIE,IJB:IJE,IKB:IKE) = (PW_NU(IIB:IIE,IJB:IJE,IKB:IKE)>XWMIN .OR. & + ZTDT(IIB:IIE,IJB:IJE,IKB:IKE)<XTMIN .OR. & + PRVT(IIB:IIE,IJB:IJE,IKB:IKE)>ZRVSAT(IIB:IIE,IJB:IJE,IKB:IKE) ) .AND.& + PRVT(IIB:IIE,IJB:IJE,IKB:IKE)>(0.98*ZRVSAT(IIB:IIE,IJB:IJE,IKB:IKE))& + .AND. ZT(IIB:IIE,IJB:IJE,IKB:IKE)>(XTT-22.) & + .AND. ZCONC_TOT(IIB:IIE,IJB:IJE,IKB:IKE)>XCTMIN(4) +ELSE + GNUCT(IIB:IIE,IJB:IJE,IKB:IKE) = (PW_NU(IIB:IIE,IJB:IJE,IKB:IKE)>XWMIN .OR. & + PRVT(IIB:IIE,IJB:IJE,IKB:IKE)>ZRVSAT(IIB:IIE,IJB:IJE,IKB:IKE) ) .AND.& + PRVT(IIB:IIE,IJB:IJE,IKB:IKE)>(0.98*ZRVSAT(IIB:IIE,IJB:IJE,IKB:IKE))& + .AND. ZT(IIB:IIE,IJB:IJE,IKB:IKE)>(XTT-22.) & + .AND. ZCONC_TOT(IIB:IIE,IJB:IJE,IKB:IKE)>XCTMIN(4) +END IF +INUCT = COUNTJV( GNUCT(:,:,:),I1(:),I2(:),I3(:)) +! +IF( INUCT >= 1 ) THEN +! + ALLOCATE(ZNFT(INUCT,NMOD_CCN)) + ALLOCATE(ZNAT(INUCT,NMOD_CCN)) + ALLOCATE(ZTMP(INUCT,NMOD_CCN)) + ALLOCATE(ZZT(INUCT)) + ALLOCATE(ZZTDT(INUCT)) + ALLOCATE(ZSW(INUCT)) + ALLOCATE(ZZW1(INUCT)) + ALLOCATE(ZZW2(INUCT)) + ALLOCATE(ZZW3(INUCT)) + ALLOCATE(ZZW4(INUCT)) + ALLOCATE(ZZW5(INUCT)) + ALLOCATE(ZZW6(INUCT)) + ALLOCATE(ZCHEN_MULTI(INUCT,NMOD_CCN)) + ALLOCATE(ZVEC1(INUCT)) + ALLOCATE(IVEC1(INUCT)) + ALLOCATE(ZRHODREF(INUCT)) + ALLOCATE(ZEXNREF(INUCT)) + DO JL=1,INUCT + ZZT(JL) = ZT(I1(JL),I2(JL),I3(JL)) + ZZW1(JL) = ZRVSAT(I1(JL),I2(JL),I3(JL)) + ZZW2(JL) = PW_NU(I1(JL),I2(JL),I3(JL)) + ZZTDT(JL) = ZTDT(I1(JL),I2(JL),I3(JL)) + ZSW(JL) = PRVT(I1(JL),I2(JL),I3(JL))/ZRVSAT(I1(JL),I2(JL),I3(JL)) - 1. + ZRHODREF(JL) = PRHODREF(I1(JL),I2(JL),I3(JL)) + ZEXNREF(JL) = PEXNREF(I1(JL),I2(JL),I3(JL)) + DO JMOD = 1,NMOD_CCN + ZNFT(JL,JMOD) = PNFT(I1(JL),I2(JL),I3(JL),JMOD) + ZNAT(JL,JMOD) = PNAT(I1(JL),I2(JL),I3(JL),JMOD) + ZCHEN_MULTI(JL,JMOD) = (ZNFT(JL,JMOD)+ZNAT(JL,JMOD))*ZRHODREF(JL) & + / XLIMIT_FACTOR(JMOD) + ENDDO + ENDDO +! + ZZW1(:) = 1.0/ZEPS + 1.0/ZZW1(:) & + + (((XLVTT+(XCPV-XCL)*(ZZT(:)-XTT))/ZZT(:))**2)/(XCPD*XRV) ! Psi2 +! +! +!------------------------------------------------------------------------------- +! +! +!* 2. compute the constant term (ZZW3) relative to smax +! ---------------------------------------------------- +! +! Remark : in LIMA's nucleation parameterization, Smax=0.01 for a supersaturation of 1% ! +! +! + ZVEC1(:) = MAX( 1.0001, MIN( FLOAT(NAHEN)-0.0001, XAHENINTP1 * ZZT(:) + XAHENINTP2 ) ) + IVEC1(:) = INT( ZVEC1(:) ) + ZVEC1(:) = ZVEC1(:) - FLOAT( IVEC1(:) ) + ALLOCATE(ZSMAX(INUCT)) +! +! + IF (LACTIT) THEN ! including a cooling rate +! +! Compute the tabulation of function of ZZW3 : +! +! (Psi1*w+Psi3*DT/Dt)**1.5 +! ZZW3 = XAHENG*(Psi1*w + Psi3*DT/Dt)**1.5 = ------------------------ +! 2*pi*rho_l*G**(3/2) +! +! + ZZW4(:)=XPSI1( IVEC1(:)+1)*ZZW2(:)+XPSI3(IVEC1(:)+1)*ZZTDT(:) + ZZW5(:)=XPSI1( IVEC1(:) )*ZZW2(:)+XPSI3(IVEC1(:) )*ZZTDT(:) + WHERE (ZZW4(:) < 0. .OR. ZZW5(:) < 0.) + ZZW4(:) = 0. + ZZW5(:) = 0. + END WHERE + ZZW3(:) = XAHENG( IVEC1(:)+1)*(ZZW4(:)**1.5)* ZVEC1(:) & + - XAHENG( IVEC1(:) )*(ZZW5(:)**1.5)*(ZVEC1(:) - 1.0) + ! Cste*((Psi1*w+Psi3*dT/dt)/(G))**1.5 +! +! + ELSE ! LACTIT , for clouds +! +! +! Compute the tabulation of function of ZZW3 : +! +! (Psi1 * w)**1.5 +! ZZW3 = XAHENG * (Psi1 * w)**1.5 = ------------------------- +! 2 pi rho_l * G**(3/2) +! +! + ZZW2(:)=MAX(ZZW2(:),0.) + ZZW3(:)=XAHENG(IVEC1(:)+1)*((XPSI1(IVEC1(:)+1)*ZZW2(:))**1.5)* ZVEC1(:) & + -XAHENG(IVEC1(:) )*((XPSI1(IVEC1(:) )*ZZW2(:))**1.5)*(ZVEC1(:)-1.0) +! + END IF ! LACTIT +! +! +! (Psi1*w+Psi3*DT/Dt)**1.5 rho_air +! ZZW3 = ------------------------ * ------- +! 2*pi*rho_l*G**(3/2) Psi2 +! + ZZW5(:) = 1. + ZZW3(:) = (ZZW3(:)/ZZW1(:))*ZRHODREF(:) ! R.H.S. of Eq 9 of CPB 98 but + ! for multiple aerosol modes + WHERE (ZZW3(:) == 0. .AND. .NOT.(ZSW>0.)) + ZZW5(:) = -1. + END WHERE +! +! +!------------------------------------------------------------------------------- +! +! +!* 3. Compute the maximum of supersaturation +! ----------------------------------------- +! +! +! estimate S_max for the CPB98 parameterization with SEVERAL aerosols mode +! Reminder : Smax=0.01 for a 1% supersaturation +! +! Interval bounds to tabulate sursaturation Smax +! Check with values used for tabulation in ini_lima_warm.f90 + ZS1 = 1.0E-5 ! corresponds to 0.001% supersaturation + ZS2 = 5.0E-2 ! corresponds to 5.0% supersaturation + ZXACC = 1.0E-7 ! Accuracy needed for the search in [NO UNITS] +! + ZSMAX(:) = ZRIDDR(ZS1,ZS2,ZXACC,ZZW3(:),INUCT) ! ZSMAX(:) is in [NO UNITS] + ZSMAX(:) = MIN(MAX(ZSMAX(:), ZSW(:)),ZS2) +! +! +!------------------------------------------------------------------------------- +! +! +!* 4. Compute the nucleus source +! ----------------------------- +! +! +! Again : Smax=0.01 for a 1% supersaturation +! Modified values for Beta and C (see in init_aerosol_properties) account for that +! + WHERE (ZZW5(:) > 0. .AND. ZSMAX(:) > 0.) + ZVEC1(:) = MAX( 1.0001, MIN( FLOAT(NHYP)-0.0001, XHYPINTP1*LOG(ZSMAX(:))+XHYPINTP2 ) ) + IVEC1(:) = INT( ZVEC1(:) ) + ZVEC1(:) = ZVEC1(:) - FLOAT( IVEC1(:) ) + END WHERE + ZZW6(:) = 0. ! initialize the change of cloud droplet concentration +! + ZTMP(:,:)=0.0 +! +! Compute the concentration of activable aerosols for each mode +! based on the max of supersaturation ( -> ZTMP ) +! + DO JMOD = 1, NMOD_CCN ! iteration on mode number + ZZW1(:) = 0. + ZZW2(:) = 0. + ZZW3(:) = 0. + ! + WHERE( ZZW5(:) > 0. .AND. ZSMAX(:)>0.0 ) + ZZW2(:) = XHYPF12( IVEC1(:)+1,JMOD )* ZVEC1(:) & ! hypergeo function + - XHYPF12( IVEC1(:) ,JMOD )*(ZVEC1(:) - 1.0) ! XHYPF12 is tabulated + ! + ZTMP(:,JMOD) = ZCHEN_MULTI(:,JMOD)/ZRHODREF(:)*ZSMAX(:)**XKHEN_MULTI(JMOD)*ZZW2(:) + ENDWHERE + ENDDO +! +! Compute the concentration of aerosols activated at this time step +! as the difference between ZTMP and the aerosols already activated at t-dt (ZZW1) +! + DO JMOD = 1, NMOD_CCN ! iteration on mode number + ZZW1(:) = 0. + ZZW2(:) = 0. + ZZW3(:) = 0. + ! + WHERE( SUM(ZTMP(:,:),DIM=2) .GT. 25.E6/ZRHODREF(:) ) + ZZW1(:) = MIN( ZNFT(:,JMOD),MAX( ZTMP(:,JMOD)- ZNAT(:,JMOD) , 0.0 ) ) + ENDWHERE + ! + !* update the concentration of activated CCN = Na + ! + PNAT(:,:,:,JMOD) = PNAT(:,:,:,JMOD) + UNPACK( ZZW1(:), MASK=GNUCT(:,:,:), FIELD=0.0 ) + ! + !* update the concentration of free CCN = Nf + ! + PNFT(:,:,:,JMOD) = PNFT(:,:,:,JMOD) - UNPACK( ZZW1(:), MASK=GNUCT(:,:,:), FIELD=0.0 ) + ! + !* prepare to update the cloud water concentration + ! + ZZW6(:) = ZZW6(:) + ZZW1(:) + ENDDO +! +! Output tendencies +! + ZZW1(:)=0. + WHERE (ZZW5(:)>0.0 .AND. ZSMAX(:)>0.0) ! ZZW1 is computed with ZSMAX [NO UNIT] + ZZW1(:) = MIN(XCSTDCRIT*ZZW6(:)/(((ZZT(:)*ZSMAX(:))**3)*ZRHODREF(:)),1.E-5) + END WHERE + ZW(:,:,:) = MIN( UNPACK( ZZW1(:),MASK=GNUCT(:,:,:),FIELD=0.0 ),PRVT(:,:,:) ) +! + PTHT(:,:,:) = PTHT(:,:,:) + ZW(:,:,:) * (XLVTT+(XCPV-XCL)*(ZT(:,:,:)-XTT))/ & + (PEXNREF(:,:,:)*(XCPD+XCPV*PRVT(:,:,:)+XCL*(PRCT(:,:,:)+PRRT(:,:,:)))) + PRVT(:,:,:) = PRVT(:,:,:) - ZW(:,:,:) + PRCT(:,:,:) = PRCT(:,:,:) + ZW(:,:,:) + PCCT(:,:,:) = PCCT(:,:,:) + UNPACK( ZZW6(:),MASK=GNUCT(:,:,:),FIELD=0. ) +! + ZW(:,:,:) = UNPACK( 100.0*ZSMAX(:),MASK=GNUCT(:,:,:),FIELD=0.0 ) + ZW2(:,:,:) = UNPACK( ZZW6(:),MASK=GNUCT(:,:,:),FIELD=0.0 ) +! +! +!------------------------------------------------------------------------------- +! +! +!* 5. Cleaning +! ----------- +! +! + DEALLOCATE(IVEC1) + DEALLOCATE(ZVEC1) + DEALLOCATE(ZNFT) + DEALLOCATE(ZNAT) + DEALLOCATE(ZZT) + DEALLOCATE(ZSMAX) + DEALLOCATE(ZZW1) + DEALLOCATE(ZZW2) + DEALLOCATE(ZZW3) + DEALLOCATE(ZZW4) + DEALLOCATE(ZZW5) + DEALLOCATE(ZZW6) + DEALLOCATE(ZZTDT) + DEALLOCATE(ZSW) + DEALLOCATE(ZRHODREF) + DEALLOCATE(ZCHEN_MULTI) + DEALLOCATE(ZEXNREF) +! +END IF ! INUCT +! +IF ( OCLOSE_OUT ) THEN + TZFIELD%CMNHNAME ='SMAX' + TZFIELD%CSTDNAME = '' + TZFIELD%CLONGNAME = TRIM(TZFIELD%CMNHNAME) + TZFIELD%CCOMMENT = 'X_Y_Z_SMAX' + TZFIELD%NGRID = 1 + TZFIELD%NTYPE = TYPEREAL + TZFIELD%NDIMS = 3 + TZFIELD%LTIMEDEP = .TRUE. + CALL IO_WRITE_FIELD(TPFILE,TZFIELD,ZW) + ! + TZFIELD%CMNHNAME ='NACT' + TZFIELD%CSTDNAME = '' + TZFIELD%CLONGNAME = TRIM(TZFIELD%CMNHNAME) + TZFIELD%CCOMMENT = 'X_Y_Z_NACT' + TZFIELD%NGRID = 1 + TZFIELD%NTYPE = TYPEREAL + TZFIELD%NDIMS = 3 + TZFIELD%LTIMEDEP = .TRUE. + CALL IO_WRITE_FIELD(TPFILE,TZFIELD,ZW2) +END IF +! +! +!------------------------------------------------------------------------------- +! +! +!* 6. Functions used to compute the maximum of supersaturation +! ----------------------------------------------------------- +! +! +CONTAINS +!------------------------------------------------------------------------------ +! + FUNCTION ZRIDDR(PX1,PX2INIT,PXACC,PZZW3,NPTS) RESULT(PZRIDDR) +! +! +!!**** *ZRIDDR* - iterative algorithm to find root of a function +!! +!! +!! PURPOSE +!! ------- +!! The purpose of this function is to find the root of a given function +!! the arguments are the brackets bounds (the interval where to find the root) +!! the accuracy needed and the input parameters of the given function. +!! Using Ridders' method, return the root of a function known to lie between +!! PX1 and PX2. The root, returned as PZRIDDR, will be refined to an approximate +!! accuracy PXACC. +!! +!!** METHOD +!! ------ +!! Ridders' method +!! +!! EXTERNAL +!! -------- +!! FUNCSMAX +!! +!! IMPLICIT ARGUMENTS +!! ------------------ +!! +!! REFERENCE +!! --------- +!! NUMERICAL RECIPES IN FORTRAN 77: THE ART OF SCIENTIFIC COMPUTING +!! (ISBN 0-521-43064-X) +!! Copyright (C) 1986-1992 by Cambridge University Press. +!! Programs Copyright (C) 1986-1992 by Numerical Recipes Software. +!! +!! AUTHOR +!! ------ +!! Frederick Chosson *CERFACS* +!! +!! MODIFICATIONS +!! ------------- +!! Original 12/07/07 +!! S.BERTHET 2008 vectorization +!------------------------------------------------------------------------------ +! +!* 0. DECLARATIONS +! +! +IMPLICIT NONE +! +!* 0.1 declarations of arguments and result +! +INTEGER, INTENT(IN) :: NPTS +REAL, DIMENSION(:), INTENT(IN) :: PZZW3 +REAL, INTENT(IN) :: PX1, PX2INIT, PXACC +REAL, DIMENSION(:), ALLOCATABLE :: PZRIDDR +! +!* 0.2 declarations of local variables +! +! +INTEGER, PARAMETER :: MAXIT=60 +REAL, PARAMETER :: UNUSED=0.0 !-1.11e30 +REAL, DIMENSION(:), ALLOCATABLE :: fh,fl, fm,fnew +REAL :: s,xh,xl,xm,xnew +REAL :: PX2 +INTEGER :: j, JL +! +ALLOCATE( fh(NPTS)) +ALLOCATE( fl(NPTS)) +ALLOCATE( fm(NPTS)) +ALLOCATE(fnew(NPTS)) +ALLOCATE(PZRIDDR(NPTS)) +! +PZRIDDR(:)= UNUSED +PX2 = PX2INIT +fl(:) = FUNCSMAX(PX1,PZZW3(:),NPTS) +fh(:) = FUNCSMAX(PX2,PZZW3(:),NPTS) +! +DO JL = 1, NPTS + PX2 = PX2INIT +100 if ((fl(JL) > 0.0 .and. fh(JL) < 0.0) .or. (fl(JL) < 0.0 .and. fh(JL) > 0.0)) then + xl = PX1 + xh = PX2 + do j=1,MAXIT + xm = 0.5*(xl+xh) + fm(JL) = SINGL_FUNCSMAX(xm,PZZW3(JL),JL) + s = sqrt(fm(JL)**2-fl(JL)*fh(JL)) + if (s == 0.0) then + GO TO 101 + endif + xnew = xm+(xm-xl)*(sign(1.0,fl(JL)-fh(JL))*fm(JL)/s) + if (abs(xnew - PZRIDDR(JL)) <= PXACC) then + GO TO 101 + endif + PZRIDDR(JL) = xnew + fnew(JL) = SINGL_FUNCSMAX(PZRIDDR(JL),PZZW3(JL),JL) + if (fnew(JL) == 0.0) then + GO TO 101 + endif + if (sign(fm(JL),fnew(JL)) /= fm(JL)) then + xl =xm + fl(JL)=fm(JL) + xh =PZRIDDR(JL) + fh(JL)=fnew(JL) + else if (sign(fl(JL),fnew(JL)) /= fl(JL)) then + xh =PZRIDDR(JL) + fh(JL)=fnew(JL) + else if (sign(fh(JL),fnew(JL)) /= fh(JL)) then + xl =PZRIDDR(JL) + fl(JL)=fnew(JL) + else if (PX2 .lt. 0.05) then + PX2 = PX2 + 1.0E-2 + PRINT*, 'PX2 ALWAYS too small, we put a greater one : PX2 =',PX2 + fh(JL) = SINGL_FUNCSMAX(PX2,PZZW3(JL),JL) + go to 100 + print*, 'PZRIDDR: never get here' + STOP + end if + if (abs(xh-xl) <= PXACC) then + GO TO 101 + endif +!!SB +!!$ if (j == MAXIT .and. (abs(xh-xl) > PXACC) ) then +!!$ PZRIDDR(JL)=0.0 +!!$ go to 101 +!!$ endif +!!SB + end do + print*, 'PZRIDDR: exceeded maximum iterations',j + STOP + else if (fl(JL) == 0.0) then + PZRIDDR(JL)=PX1 + else if (fh(JL) == 0.0) then + PZRIDDR(JL)=PX2 + else if (PX2 .lt. 0.05) then + PX2 = PX2 + 1.0E-2 + PRINT*, 'PX2 too small, we put a greater one : PX2 =',PX2 + fh(JL) = SINGL_FUNCSMAX(PX2,PZZW3(JL),JL) + go to 100 + else +!!$ print*, 'PZRIDDR: root must be bracketed' +!!$ print*,'npts ',NPTS,'jl',JL +!!$ print*, 'PX1,PX2,fl,fh',PX1,PX2,fl(JL),fh(JL) +!!$ print*, 'PX2 = 30 % of supersaturation, there is no solution for Smax' +!!$ print*, 'try to put greater PX2 (upper bound for Smax research)' +!!$ STOP + PZRIDDR(JL)=0.0 + go to 101 + end if +101 ENDDO +! +DEALLOCATE( fh) +DEALLOCATE( fl) +DEALLOCATE( fm) +DEALLOCATE(fnew) +! +END FUNCTION ZRIDDR +! +!------------------------------------------------------------------------------ +! + FUNCTION FUNCSMAX(PPZSMAX,PPZZW3,NPTS) RESULT(PFUNCSMAX) +! +! +!!**** *FUNCSMAX* - function describing SMAX function that you want to find the root +!! +!! +!! PURPOSE +!! ------- +!! This function describe the equilibrium between Smax and two aerosol mode +!! acting as CCN. This function is derive from eq. (9) of CPB98 but for two +!! aerosols mode described by their respective parameters C, k, Mu, Beta. +!! the arguments are the supersaturation in "no unit" and the r.h.s. of this eq. +!! and the ratio of concentration of injected aerosols on maximum concentration +!! of injected aerosols ever. +!!** METHOD +!! ------ +!! This function is called by zriddr.f90 +!! +!! EXTERNAL +!! -------- +!! +!! IMPLICIT ARGUMENTS +!! ------------------ +!! Module MODD_PARAM_LIMA_WARM +!! XHYPF32 +!! +!! XHYPINTP1 +!! XHYPINTP2 +!! +!! Module MODD_PARAM_C2R2 +!! XKHEN_MULTI() +!! NMOD_CCN +!! +!! REFERENCE +!! --------- +!! Cohard, J.M., J.P.Pinty, K.Suhre, 2000:"On the parameterization of activation +!! spectra from cloud condensation nuclei microphysical properties", +!! J. Geophys. Res., Vol.105, N0.D9, pp. 11753-11766 +!! +!! AUTHOR +!! ------ +!! Frederick Chosson *CERFACS* +!! +!! MODIFICATIONS +!! ------------- +!! Original 12/07/07 +!! S.Berthet 19/03/08 Extension a une population multimodale d aerosols +! +!------------------------------------------------------------------------------ +! +!* 0. DECLARATIONS +! +IMPLICIT NONE +! +!* 0.1 declarations of arguments and result +! +INTEGER, INTENT(IN) :: NPTS +REAL, INTENT(IN) :: PPZSMAX ! supersaturation is already in no units +REAL, DIMENSION(:), INTENT(IN) :: PPZZW3 ! +REAL, DIMENSION(:), ALLOCATABLE :: PFUNCSMAX ! +! +!* 0.2 declarations of local variables +! +REAL :: ZHYPF +! +REAL :: PZVEC1 +INTEGER :: PIVEC1 +! +ALLOCATE(PFUNCSMAX(NPTS)) +! +PFUNCSMAX(:) = 0. +PZVEC1 = MAX( 1.0001,MIN( FLOAT(NHYP)-0.0001, & + XHYPINTP1*LOG(PPZSMAX)+XHYPINTP2 ) ) +PIVEC1 = INT( PZVEC1 ) +PZVEC1 = PZVEC1 - FLOAT( PIVEC1 ) +DO JMOD = 1, NMOD_CCN + ZHYPF = 0. ! XHYPF32 is tabulated with ZSMAX in [NO UNITS] + ZHYPF = XHYPF32( PIVEC1+1,JMOD ) * PZVEC1 & + - XHYPF32( PIVEC1 ,JMOD ) *(PZVEC1 - 1.0) + ! sum of s**(ki+2) * F32 * Ci * ki * beta(ki/2,3/2) + PFUNCSMAX(:) = PFUNCSMAX(:) + (PPZSMAX)**(XKHEN_MULTI(JMOD) + 2) & + * ZHYPF* XKHEN_MULTI(JMOD) * ZCHEN_MULTI(:,JMOD) & + * GAMMA_X0D( XKHEN_MULTI(JMOD)/2.0)*GAMMA_X0D(3.0/2.0) & + / GAMMA_X0D((XKHEN_MULTI(JMOD)+3.0)/2.0) +ENDDO +! function l.h.s. minus r.h.s. of eq. (9) of CPB98 but for NMOD_CCN aerosol mode +PFUNCSMAX(:) = PFUNCSMAX(:) - PPZZW3(:) +! +END FUNCTION FUNCSMAX +! +!------------------------------------------------------------------------------ +! + FUNCTION SINGL_FUNCSMAX(PPZSMAX,PPZZW3,KINDEX) RESULT(PSINGL_FUNCSMAX) +! +! +!!**** *SINGL_FUNCSMAX* - same function as FUNCSMAX +!! +!! +!! PURPOSE +!! ------- +! As for FUNCSMAX but for a scalar +!! +!!** METHOD +!! ------ +!! This function is called by zriddr.f90 +!! +!------------------------------------------------------------------------------ +! +!* 0. DECLARATIONS +! +IMPLICIT NONE +! +!* 0.1 declarations of arguments and result +! +INTEGER, INTENT(IN) :: KINDEX +REAL, INTENT(IN) :: PPZSMAX ! supersaturation is "no unit" +REAL, INTENT(IN) :: PPZZW3 ! +REAL :: PSINGL_FUNCSMAX ! +! +!* 0.2 declarations of local variables +! +REAL :: ZHYPF +! +REAL :: PZVEC1 +INTEGER :: PIVEC1 +! +PSINGL_FUNCSMAX = 0. +PZVEC1 = MAX( 1.0001,MIN( FLOAT(NHYP)-0.0001, & + XHYPINTP1*LOG(PPZSMAX)+XHYPINTP2 ) ) +PIVEC1 = INT( PZVEC1 ) +PZVEC1 = PZVEC1 - FLOAT( PIVEC1 ) +DO JMOD = 1, NMOD_CCN + ZHYPF = 0. ! XHYPF32 is tabulated with ZSMAX in [NO UNITS] + ZHYPF = XHYPF32( PIVEC1+1,JMOD ) * PZVEC1 & + - XHYPF32( PIVEC1 ,JMOD ) *(PZVEC1 - 1.0) + ! sum of s**(ki+2) * F32 * Ci * ki * bêta(ki/2,3/2) + PSINGL_FUNCSMAX = PSINGL_FUNCSMAX + (PPZSMAX)**(XKHEN_MULTI(JMOD) + 2) & + * ZHYPF* XKHEN_MULTI(JMOD) * ZCHEN_MULTI(KINDEX,JMOD) & + * GAMMA_X0D( XKHEN_MULTI(JMOD)/2.0)*GAMMA_X0D(3.0/2.0) & + / GAMMA_X0D((XKHEN_MULTI(JMOD)+3.0)/2.0) +ENDDO +! function l.h.s. minus r.h.s. of eq. (9) of CPB98 but for NMOD_CCN aerosol mode +PSINGL_FUNCSMAX = PSINGL_FUNCSMAX - PPZZW3 +! +END FUNCTION SINGL_FUNCSMAX +! +!----------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_CCN_ACTIVATION diff --git a/src/MNH/lima_ccn_hom_freezing.f90 b/src/MNH/lima_ccn_hom_freezing.f90 new file mode 100644 index 0000000000000000000000000000000000000000..1e5f382ebd61fa095ed809e769fbf87f4088c63e --- /dev/null +++ b/src/MNH/lima_ccn_hom_freezing.f90 @@ -0,0 +1,391 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_CCN_HOM_FREEZING +! ################################# +! +INTERFACE + SUBROUTINE LIMA_CCN_HOM_FREEZING (PRHODREF, PEXNREF, PPABST, PW_NU, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCRT, PCIT, PNFT, PNHT ) +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PW_NU ! updraft velocity used for + ! the nucleation param. +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHT ! Theta at time t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRST ! Snow/aggregate m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRGT ! Graupel m.r. at t +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCRT ! Rain water C. source +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCIT ! Ice crystal C. source +! +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNFT ! Free CCN conc. +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PNHT ! haze homogeneous freezing +! +END SUBROUTINE LIMA_CCN_HOM_FREEZING +END INTERFACE +END MODULE MODI_LIMA_CCN_HOM_FREEZING +! +! ########################################################################## + SUBROUTINE LIMA_CCN_HOM_FREEZING (PRHODREF, PEXNREF, PPABST, PW_NU, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCRT, PCIT, PNFT, PNHT ) +! ########################################################################## +! +!! PURPOSE +!! ------- +!! Compute the homogeneous freezing of CCN where T<-35°C +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAMETERS, ONLY : JPHEXT, JPVEXT +USE MODD_CST, ONLY : XP00, XRD, XRV, XMV, XMD, XCPD, XCPV, XCL, XCI, & + XTT, XLSTT, XLVTT, XALPI, XBETAI, XGAMI, & + XG +USE MODD_PARAM_LIMA, ONLY : NMOD_CCN, NMOD_IMM, XRTMIN, XCTMIN, XNUC +USE MODD_PARAM_LIMA_COLD, ONLY : XRCOEF_HONH, XCEXP_DIFVAP_HONH, XCOEF_DIFVAP_HONH,& + XCRITSAT1_HONH, XCRITSAT2_HONH, XTMAX_HONH, & + XTMIN_HONH, XC1_HONH, XC2_HONH, XC3_HONH, & + XDLNJODT1_HONH, XDLNJODT2_HONH, XRHOI_HONH, & + XC_HONC, XTEXP1_HONC, XTEXP2_HONC, XTEXP3_HONC, & + XTEXP4_HONC, XTEXP5_HONC +USE MODD_PARAM_LIMA_WARM, ONLY : XLBC +USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV +! +USE MODD_NSV +USE MODD_BUDGET +USE MODI_BUDGET +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PW_NU ! updraft velocity used for + ! the nucleation param. +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHT ! Theta at time t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRST ! Snow/aggregate m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRGT ! Graupel m.r. at t +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCRT ! Rain water C. source +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCIT ! Ice crystal C. source +! +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNFT ! Free CCN conc. +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PNHT ! haze homogeneous freezing +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(:), ALLOCATABLE :: ZRVT ! Water vapor m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRRT ! Rain water m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRIT ! Pristine ice m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRST ! Snow/aggregate m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRGT ! Graupel/hail m.r. at t +! +REAL, DIMENSION(:), ALLOCATABLE :: ZTHT ! Theta source +! +REAL, DIMENSION(:), ALLOCATABLE :: ZCCT ! Cloud water conc. source +REAL, DIMENSION(:), ALLOCATABLE :: ZCRT ! Rain water conc. source +REAL, DIMENSION(:,:), ALLOCATABLE :: ZNFT ! available nucleus conc. source +REAL, DIMENSION(:), ALLOCATABLE :: ZCIT ! Pristine ice conc. source +REAL, DIMENSION(:), ALLOCATABLE :: ZZNHT ! Nucleated Ice nuclei conc. source + !by Homogeneous freezing +! +REAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & + :: ZNHT ! Nucleated Ice nuclei conc. source + ! by Homogeneous freezing of haze +REAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & + :: ZW, ZT ! work arrays +! +REAL, DIMENSION(:), ALLOCATABLE & + :: ZRHODREF, & ! RHO Dry REFerence + ZRHODJ, & ! RHO times Jacobian + ZZT, & ! Temperature + ZPRES, & ! Pressure + ZEXNREF, & ! EXNer Pressure REFerence + ZZW, & ! Work array + ZZX, & ! Work array + ZZY, & ! Work array + ZLSFACT, & ! L_s/(Pi_ref*C_ph) + ZLVFACT, & ! L_v/(Pi_ref*C_ph) + ZLBDAC, & ! Slope parameter of the cloud droplet distr. + ZSI, & ! Saturation over ice + ZTCELSIUS,& + ZLS, & + ZPSI1, & + ZPSI2, & + ZTAU, & + ZBFACT, & + ZW_NU, & + ZFREECCN, & + ZCCNFROZEN +! +INTEGER :: IIB, IIE, IJB, IJE, IKB, IKE ! Physical domain +INTEGER :: JL, JMOD_CCN, JMOD_IMM ! Loop index +! +INTEGER :: INEGT ! Case number of hom. nucleation +LOGICAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & + :: GNEGT ! Test where to compute the hom. nucleation +INTEGER , DIMENSION(SIZE(GNEGT)) :: I1,I2,I3 ! Used to replace the COUNT +! +REAL :: ZEPS ! molar mass ratio +! +!------------------------------------------------------------------------------- +! +! +!* 1. Preliminary computations and packing +! ------------------------------------ +! +! +! Physical domain +IIB=1+JPHEXT +IIE=SIZE(PTHT,1) - JPHEXT +IJB=1+JPHEXT +IJE=SIZE(PTHT,2) - JPHEXT +IKB=1+JPVEXT +IKE=SIZE(PTHT,3) - JPVEXT +! +! Temperature +ZT(:,:,:) = PTHT(:,:,:) * ( PPABST(:,:,:)/XP00 ) ** (XRD/XCPD) +! +ZNHT(:,:,:) = PNHT(:,:,:) +! +! Computations only where the temperature is below -35°C +! PACK variables +! +GNEGT(:,:,:) = .FALSE. +GNEGT(IIB:IIE,IJB:IJE,IKB:IKE) = ZT(IIB:IIE,IJB:IJE,IKB:IKE)<XTT-35.0 +INEGT = COUNTJV( GNEGT(:,:,:),I1(:),I2(:),I3(:)) +! +IF (INEGT.GT.0) THEN + + ALLOCATE(ZRVT(INEGT)) + ALLOCATE(ZRCT(INEGT)) + ALLOCATE(ZRRT(INEGT)) + ALLOCATE(ZRIT(INEGT)) + ALLOCATE(ZRST(INEGT)) + ALLOCATE(ZRGT(INEGT)) + ! + ALLOCATE(ZTHT(INEGT)) + ! + ALLOCATE(ZCCT(INEGT)) + ALLOCATE(ZCRT(INEGT)) + ALLOCATE(ZCIT(INEGT)) + ! + ALLOCATE(ZNFT(INEGT,NMOD_CCN)) + ALLOCATE(ZZNHT(INEGT)) + ! + ALLOCATE(ZRHODREF(INEGT)) + ALLOCATE(ZZT(INEGT)) + ALLOCATE(ZPRES(INEGT)) + ALLOCATE(ZEXNREF(INEGT)) + ! + DO JL=1,INEGT + ZRVT(JL) = PRVT(I1(JL),I2(JL),I3(JL)) + ZRCT(JL) = PRCT(I1(JL),I2(JL),I3(JL)) + ZRRT(JL) = PRRT(I1(JL),I2(JL),I3(JL)) + ZRIT(JL) = PRIT(I1(JL),I2(JL),I3(JL)) + ZRST(JL) = PRST(I1(JL),I2(JL),I3(JL)) + ZRGT(JL) = PRGT(I1(JL),I2(JL),I3(JL)) + ! + ZTHT(JL) = PTHT(I1(JL),I2(JL),I3(JL)) + ! + ZCCT(JL) = PCCT(I1(JL),I2(JL),I3(JL)) + ZCRT(JL) = PCRT(I1(JL),I2(JL),I3(JL)) + ZCIT(JL) = PCIT(I1(JL),I2(JL),I3(JL)) + ! + DO JMOD_CCN = 1, NMOD_CCN + ZNFT(JL,JMOD_CCN) = PNFT(I1(JL),I2(JL),I3(JL),JMOD_CCN) + ENDDO + ZZNHT(JL) = ZNHT(I1(JL),I2(JL),I3(JL)) + ZRHODREF(JL) = PRHODREF(I1(JL),I2(JL),I3(JL)) + ZZT(JL) = ZT(I1(JL),I2(JL),I3(JL)) + ZPRES(JL) = PPABST(I1(JL),I2(JL),I3(JL)) + ZEXNREF(JL) = PEXNREF(I1(JL),I2(JL),I3(JL)) + ENDDO +! +! PACK : done +! Prepare computations +! + ALLOCATE( ZLSFACT (INEGT) ) + ALLOCATE( ZLVFACT (INEGT) ) + ALLOCATE( ZSI (INEGT) ) + ALLOCATE( ZTCELSIUS (INEGT) ) + ALLOCATE( ZLBDAC (INEGT) ) +! + ALLOCATE( ZZW (INEGT) ) ; ZZW(:) = 0.0 + ALLOCATE( ZZX (INEGT) ) ; ZZX(:) = 0.0 + ALLOCATE( ZZY (INEGT) ) ; ZZY(:) = 0.0 +! + ZTCELSIUS(:) = ZZT(:)-XTT ! T [°C] + ZZW(:) = ZEXNREF(:)*( XCPD+XCPV*ZRVT(:)+XCL*(ZRCT(:)+ZRRT(:)) & + +XCI*(ZRIT(:)+ZRST(:)+ZRGT(:)) ) + ZLSFACT(:) = (XLSTT+(XCPV-XCI)*ZTCELSIUS(:))/ZZW(:) ! L_s/(Pi_ref*C_ph) + ZLVFACT(:) = (XLVTT+(XCPV-XCL)*ZTCELSIUS(:))/ZZW(:) ! L_v/(Pi_ref*C_ph) +! + ZZW(:) = EXP( XALPI - XBETAI/ZZT(:) - XGAMI*ALOG(ZZT(:) ) ) ! es_i + ZSI(:) = ZRVT(:)*(ZPRES(:)-ZZW(:))/((XMV/XMD)*ZZW(:)) ! Saturation over ice +! +! +!------------------------------------------------------------------------------- +! +! +!* 2. Haze homogeneous freezing +! ------------------------ +! +! +! Compute the haze homogeneous nucleation source: RHHONI +! + IF( NMOD_CCN.GT.0 ) THEN + +! Sum of the available CCN + ALLOCATE( ZFREECCN(INEGT) ) + ALLOCATE( ZCCNFROZEN(INEGT) ) + ZFREECCN(:)=0. + ZCCNFROZEN(:)=0. + DO JMOD_CCN = 1, NMOD_CCN + ZFREECCN(:) = ZFREECCN(:) + ZNFT(:,JMOD_CCN) + END DO +! + ALLOCATE(ZW_NU(INEGT)) + DO JL=1,INEGT + ZW_NU(JL) = PW_NU(I1(JL),I2(JL),I3(JL)) + END DO +! + ZZW(:) = 0.0 + ZZX(:) = 0.0 + ZEPS = XMV / XMD + ZZY(:) = XCRITSAT1_HONH - & ! Critical Sat. + (MIN( XTMAX_HONH,MAX( XTMIN_HONH,ZZT(:) ) )/XCRITSAT2_HONH) +! + ALLOCATE(ZLS(INEGT)) + ALLOCATE(ZPSI1(INEGT)) + ALLOCATE(ZPSI2(INEGT)) + ALLOCATE(ZTAU(INEGT)) + ALLOCATE(ZBFACT(INEGT)) +! + WHERE( (ZZT(:)<XTT-35.0) .AND. (ZSI(:)>ZZY(:)) ) + ZLS(:) = XLSTT+(XCPV-XCI)*ZTCELSIUS(:) ! Ls +! + ZPSI1(:) = ZZY(:) * (XG/(XRD*ZZT(:)))*(ZEPS*ZLS(:)/(XCPD*ZZT(:))-1.) +! ! Psi1 (a1*Scr in KL01) +! BV correction PSI2 enlever 1/ZEPS ? +! ZPSI2(:) = ZSI(:) * (1.0/ZEPS+1.0/ZRVT(:)) + & + ZPSI2(:) = ZSI(:) * (1.0/ZRVT(:)) + & + ZZY(:) * ((ZLS(:)/ZZT(:))**2)/(XCPD*XRV) +! ! Psi2 (a2+a3*Scr in KL01) + ZTAU(:) = 1.0 / ( MAX( XC1_HONH,XC1_HONH*(XC2_HONH-XC3_HONH*ZZT(:)) ) *& + ABS( (XDLNJODT1_HONH - XDLNJODT2_HONH*ZZT(:)) * & + ((ZPRES(:)/XP00)**(XRD/XCPD))*ZTHT(:) ) ) +! + ZBFACT(:) = (XRHOI_HONH/ZRHODREF(:)) * (ZSI(:)/(ZZY(:)-1.0)) & +! BV correction ZBFACT enlever 1/ZEPS ? +! * (1.0/ZRVT(:)+1.0/ZEPS) & + * (1.0/ZRVT(:)) & + / (XCOEF_DIFVAP_HONH*(ZZT(:)**XCEXP_DIFVAP_HONH /ZPRES(:))) +! +! BV correction ZZX rho_i{-1} ? +! ZZX(:) = MAX( MIN( XRHOI_HONH*ZBFACT(:)**1.5 * (ZPSI1(:)/ZPSI2(:)) & + ZZX(:) = MAX( MIN( (1/XRHOI_HONH)*ZBFACT(:)**1.5 * (ZPSI1(:)/ZPSI2(:)) & + * (ZW_NU(:)/SQRT(ZTAU(:))) , ZFREECCN(:) ) , 0.) +! + ZZW(:) = MIN( XRCOEF_HONH*ZZX(:)*(ZTAU(:)/ZBFACT(:))**1.5 , ZRVT(:) ) + END WHERE +! +! Apply the changes + DO JMOD_CCN = 1, NMOD_CCN + WHERE(ZFREECCN(:)>1.) + ZCCNFROZEN(:) = ZZX(:) * ZNFT(:,JMOD_CCN)/ZFREECCN(:) + END WHERE + PNFT(:,:,:,JMOD_CCN) = PNFT(:,:,:,JMOD_CCN) - UNPACK( ZCCNFROZEN(:), MASK=GNEGT(:,:,:),FIELD=0.) + END DO +! + PTHT(:,:,:) = PTHT(:,:,:) + UNPACK( ZZW(:)*(ZLSFACT(:)-ZLVFACT(:)), MASK=GNEGT(:,:,:),FIELD=0.) + PRVT(:,:,:) = PRVT(:,:,:) - UNPACK( ZZW(:), MASK=GNEGT(:,:,:),FIELD=0.) + PRIT(:,:,:) = PRIT(:,:,:) + UNPACK( ZZW(:), MASK=GNEGT(:,:,:),FIELD=0.) + PCIT(:,:,:) = PCIT(:,:,:) + UNPACK( ZZX(:), MASK=GNEGT(:,:,:),FIELD=0.) + PNHT(:,:,:) = PNHT(:,:,:) + UNPACK( ZZX(:), MASK=GNEGT(:,:,:),FIELD=0.) + + DEALLOCATE(ZFREECCN) + DEALLOCATE(ZCCNFROZEN) + DEALLOCATE(ZLS) + DEALLOCATE(ZPSI1) + DEALLOCATE(ZPSI2) + DEALLOCATE(ZTAU) + DEALLOCATE(ZBFACT) + DEALLOCATE(ZW_NU) +! + END IF +! +! + DEALLOCATE(ZRVT) + DEALLOCATE(ZRCT) + DEALLOCATE(ZRRT) + DEALLOCATE(ZRIT) + DEALLOCATE(ZRST) + DEALLOCATE(ZRGT) +! + DEALLOCATE(ZTHT) +! + DEALLOCATE(ZCCT) + DEALLOCATE(ZCRT) + DEALLOCATE(ZCIT) +! + DEALLOCATE(ZNFT) + DEALLOCATE(ZZNHT) +! + DEALLOCATE(ZRHODREF) + DEALLOCATE(ZZT) + DEALLOCATE(ZPRES) + DEALLOCATE(ZEXNREF) +! + DEALLOCATE(ZLSFACT) + DEALLOCATE(ZLVFACT) + DEALLOCATE(ZSI) + DEALLOCATE(ZTCELSIUS) + DEALLOCATE(ZLBDAC) +! + DEALLOCATE(ZZW) + DEALLOCATE(ZZX) + DEALLOCATE(ZZY) +! +! +END IF ! INEGT>0 +! +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_CCN_HOM_FREEZING diff --git a/src/MNH/lima_cold.f90 b/src/MNH/lima_cold.f90 index 61a2b637018ec0626198872c4d2b46f59e7e49e2..28b88ca60f3aa5848d53e9e1863dc8ed44ecf251 100644 --- a/src/MNH/lima_cold.f90 +++ b/src/MNH/lima_cold.f90 @@ -8,12 +8,12 @@ ! ##################### ! INTERFACE - SUBROUTINE LIMA_COLD (OSEDI, OHHONI, KSPLITG, PTSTEP, KMI, & - KRR, PZZ, PRHODJ, & - PRHODREF, PEXNREF, PPABST, PW_NU, & - PTHM, PPABSM, & - PTHT, PRT, PSVT, & - PTHS, PRS, PSVS, & + SUBROUTINE LIMA_COLD (OSEDI, OHHONI, KSPLITG, PTSTEP, KMI, & + KRR, PZZ, PRHODJ, & + PRHODREF, PEXNREF, PPABST, PW_NU, & + PTHM, PPABSM, & + PTHT, PRT, PSVT, & + PTHS, PRS, PSVS, & PINPRS, PINPRG, PINPRH) ! LOGICAL, INTENT(IN) :: OSEDI ! switch to activate the @@ -53,15 +53,15 @@ END SUBROUTINE LIMA_COLD END INTERFACE END MODULE MODI_LIMA_COLD ! -! ############################################################ - SUBROUTINE LIMA_COLD (OSEDI, OHHONI, KSPLITG, PTSTEP, KMI, & - KRR, PZZ, PRHODJ, & - PRHODREF, PEXNREF, PPABST, PW_NU, & - PTHM, PPABSM, & - PTHT, PRT, PSVT, & - PTHS, PRS, PSVS, & +! ###################################################################### + SUBROUTINE LIMA_COLD (OSEDI, OHHONI, KSPLITG, PTSTEP, KMI, & + KRR, PZZ, PRHODJ, & + PRHODREF, PEXNREF, PPABST, PW_NU, & + PTHM, PPABSM, & + PTHT, PRT, PSVT, & + PTHS, PRS, PSVS, & PINPRS, PINPRG, PINPRH) -! ############################################################ +! ###################################################################### ! !! !! PURPOSE @@ -115,6 +115,9 @@ END MODULE MODI_LIMA_COLD USE MODD_NSV USE MODD_PARAM_LIMA ! +USE MODD_BUDGET +USE MODI_BUDGET +! USE MODI_LIMA_COLD_SEDIMENTATION USE MODI_LIMA_MEYERS USE MODI_LIMA_PHILLIPS @@ -304,6 +307,16 @@ CALL LIMA_COLD_SEDIMENTATION (OSEDI, KSPLITG, PTSTEP, KMI, & PRIS, PRSS, PRGS, PRHS, PCIS, & PINPRS, PINPRG,& PINPRH ) + +IF (LBU_ENABLE) THEN + IF (LBUDGET_RI .AND. OSEDI) CALL BUDGET (PRIS(:,:,:)*PRHODJ(:,:,:),9 ,'SEDI_BU_RRI') + IF (LBUDGET_RS .AND. LSNOW) CALL BUDGET (PRSS(:,:,:)*PRHODJ(:,:,:),10 ,'SEDI_BU_RRS') + IF (LBUDGET_RG .AND. LSNOW) CALL BUDGET (PRGS(:,:,:)*PRHODJ(:,:,:),11 ,'SEDI_BU_RRG') + IF (LBUDGET_RH .AND. LHAIL) CALL BUDGET (PRHS(:,:,:)*PRHODJ(:,:,:),12 ,'SEDI_BU_RRH') + IF (LBUDGET_SV) THEN + IF (OSEDI) CALL BUDGET (PCIS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NI,'SEDI_BU_RSV') ! RCI + END IF +END IF !------------------------------------------------------------------------------- ! ! @@ -329,7 +342,7 @@ IF (LNUCL) THEN PNAS, PIFS, PINS, PNIS ) END IF ! - IF (LWARM) THEN + IF (LWARM .OR. (LHHONI .AND. NMOD_CCN.GE.1)) THEN CALL LIMA_COLD_HOM_NUCL (OHHONI, PTSTEP, KMI, & PZZ, PRHODJ, & PRHODREF, PEXNREF, PPABST, PW_NU, & diff --git a/src/MNH/lima_cold_hom_nucl.f90 b/src/MNH/lima_cold_hom_nucl.f90 index 8227b52b18499e7e808c286e6fc1a5f4c2b12df8..4007c1355ca200c23083f654577d539ab5c6d554 100644 --- a/src/MNH/lima_cold_hom_nucl.f90 +++ b/src/MNH/lima_cold_hom_nucl.f90 @@ -101,7 +101,7 @@ USE MODD_PARAMETERS, ONLY : JPHEXT, JPVEXT USE MODD_CST, ONLY : XP00, XRD, XRV, XMV, XMD, XCPD, XCPV, XCL, XCI, & XTT, XLSTT, XLVTT, XALPI, XBETAI, XGAMI, & XG -USE MODD_PARAM_LIMA, ONLY : NMOD_CCN, NMOD_IMM, XRTMIN, XCTMIN, XNUC +USE MODD_PARAM_LIMA, ONLY : NMOD_CCN, NMOD_IMM, XRTMIN, XCTMIN, XNUC, LWARM, LRAIN USE MODD_PARAM_LIMA_COLD, ONLY : XRCOEF_HONH, XCEXP_DIFVAP_HONH, XCOEF_DIFVAP_HONH,& XCRITSAT1_HONH, XCRITSAT2_HONH, XTMAX_HONH, & XTMIN_HONH, XC1_HONH, XC2_HONH, XC3_HONH, & @@ -444,7 +444,7 @@ IF (INEGT.GT.0) THEN END IF ! OHHONI ! ! Budget storage - IF (NBUMOD==KMI .AND. LBU_ENABLE .AND. OHHONI) THEN + IF (NBUMOD==KMI .AND. LBU_ENABLE .AND. OHHONI .AND. NMOD_CCN.GT.0 ) THEN IF (LBUDGET_TH) CALL BUDGET ( & UNPACK(ZTHS(:),MASK=GNEGT(:,:,:),FIELD=PTHS)*PRHODJ(:,:,:),& 4,'HONH_BU_RTH') @@ -480,6 +480,7 @@ IF (INEGT.GT.0) THEN ! Compute the droplet homogeneous nucleation source: RCHONI ! -> Pruppacher(1995) ! +IF (LWARM) THEN ZZW(:) = 0.0 ZZX(:) = 0.0 WHERE( (ZZT(:)<XTT-35.0) .AND. (ZCCT(:)>XCTMIN(2)) .AND. (ZRCT(:)>XRTMIN(2)) ) @@ -519,6 +520,7 @@ IF (INEGT.GT.0) THEN 12+NSV_LIMA_NI,'HONC_BU_RSV') END IF END IF +END IF ! ! !------------------------------------------------------------------------------- @@ -530,6 +532,7 @@ IF (INEGT.GT.0) THEN ! ! Compute the drop homogeneous nucleation source: RRHONG ! +IF (LWARM .AND. LRAIN) THEN ZZW(:) = 0.0 WHERE( (ZZT(:)<XTT-35.0) .AND. (ZRRS(:)>XRTMIN(3)/PTSTEP) ) ZZW(:) = ZRRS(:) ! Instantaneous freezing of the raindrops @@ -556,6 +559,7 @@ IF (INEGT.GT.0) THEN 12+NSV_LIMA_NR,'HONR_BU_RSV') END IF END IF +END IF ! ! !------------------------------------------------------------------------------- @@ -633,40 +637,40 @@ ELSE IF (NBUMOD==KMI .AND. LBU_ENABLE) THEN IF (LBUDGET_TH) THEN ZW(:,:,:) = PTHS(:,:,:)*PRHODJ(:,:,:) - IF( OHHONI ) CALL BUDGET (ZW,4,'HONH_BU_RTH') - CALL BUDGET (ZW,4,'HONC_BU_RTH') - CALL BUDGET (ZW,4,'HONR_BU_RTH') + IF( OHHONI .AND. NMOD_CCN.GT.0 ) CALL BUDGET (ZW,4,'HONH_BU_RTH') + IF (LWARM) CALL BUDGET (ZW,4,'HONC_BU_RTH') + IF (LWARM .AND. LRAIN) CALL BUDGET (ZW,4,'HONR_BU_RTH') ENDIF IF (LBUDGET_RV) THEN ZW(:,:,:) = PRVS(:,:,:)*PRHODJ(:,:,:) - IF( OHHONI ) CALL BUDGET (ZW,6,'HONH_BU_RRV') + IF( OHHONI .AND. NMOD_CCN.GT.0 ) CALL BUDGET (ZW,6,'HONH_BU_RRV') ENDIF IF (LBUDGET_RC) THEN ZW(:,:,:) = PRCS(:,:,:)*PRHODJ(:,:,:) - CALL BUDGET (ZW,7,'HONC_BU_RRC') + IF (LWARM) CALL BUDGET (ZW,7,'HONC_BU_RRC') ENDIF IF (LBUDGET_RR) THEN ZW(:,:,:) = PRRS(:,:,:)*PRHODJ(:,:,:) - CALL BUDGET (ZW,8,'HONR_BU_RRR') + IF (LWARM .AND. LRAIN) CALL BUDGET (ZW,8,'HONR_BU_RRR') ENDIF IF (LBUDGET_RI) THEN ZW(:,:,:) = PRIS(:,:,:)*PRHODJ(:,:,:) - IF( OHHONI ) CALL BUDGET (ZW,9,'HONH_BU_RRI') - CALL BUDGET (ZW,9,'HONC_BU_RRI') + IF( OHHONI .AND. NMOD_CCN.GT.0 ) CALL BUDGET (ZW,9,'HONH_BU_RRI') + IF (LWARM) CALL BUDGET (ZW,9,'HONC_BU_RRI') ENDIF IF (LBUDGET_RG) THEN ZW(:,:,:) = PRGS(:,:,:)*PRHODJ(:,:,:) - CALL BUDGET (ZW,11,'HONR_BU_RRG') + IF (LWARM .AND. LRAIN) CALL BUDGET (ZW,11,'HONR_BU_RRG') ENDIF IF (LBUDGET_SV) THEN ZW(:,:,:) = PCCS(:,:,:)*PRHODJ(:,:,:) - CALL BUDGET (ZW,12+NSV_LIMA_NC,'HONC_BU_RSV') + IF (LWARM) CALL BUDGET (ZW,12+NSV_LIMA_NC,'HONC_BU_RSV') ZW(:,:,:) = PCRS(:,:,:)*PRHODJ(:,:,:) - CALL BUDGET (ZW,12+NSV_LIMA_NR,'HONR_BU_RSV') + IF (LWARM .AND. LRAIN) CALL BUDGET (ZW,12+NSV_LIMA_NR,'HONR_BU_RSV') ZW(:,:,:) = PCIS(:,:,:)*PRHODJ(:,:,:) - IF( OHHONI ) CALL BUDGET (ZW,12+NSV_LIMA_NI,'HONH_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NI,'HONC_BU_RSV') - IF (NMOD_CCN.GE.1 .AND. OHHONI) THEN + IF( OHHONI .AND. NMOD_CCN.GT.0 ) CALL BUDGET (ZW,12+NSV_LIMA_NI,'HONH_BU_RSV') + IF (LWARM) CALL BUDGET (ZW,12+NSV_LIMA_NI,'HONC_BU_RSV') + IF( OHHONI .AND. NMOD_CCN.GT.0 ) THEN DO JL=1, NMOD_CCN ZW(:,:,:) = PNFS(:,:,:,JL)*PRHODJ(:,:,:) CALL BUDGET (ZW,12+NSV_LIMA_CCN_FREE+JL-1,'HONH_BU_RSV') diff --git a/src/MNH/lima_cold_sedimentation.f90 b/src/MNH/lima_cold_sedimentation.f90 index 2845479e30aa814967de0ff7ee401e91804b1aae..2764324eeca2d5e4da169904a0f1799f9f87b019 100644 --- a/src/MNH/lima_cold_sedimentation.f90 +++ b/src/MNH/lima_cold_sedimentation.f90 @@ -90,8 +90,6 @@ USE MODD_PARAMETERS, ONLY : JPHEXT, JPVEXT USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV ! USE MODD_NSV -USE MODD_BUDGET -USE MODI_BUDGET !++cb++ IMPLICIT NONE !--cb-- @@ -233,16 +231,16 @@ DO JN = 1 , KSPLITG ZCIT(JL) = PCIT(I1(JL),I2(JL),I3(JL)) END DO ZLBDAI(:) = 1.E10 - WHERE (ZRIT(:)>XRTMIN(4) .AND. ZCIT(:)>XCTMIN(4)) - ZLBDAI(:) = ( XLBI*ZCIT(:) / ZRIT(:) )**XLBEXI - END WHERE - WHERE( ZRIS(:)>ZRTMIN(4) ) + WHERE (ZRIS(:)>XRTMIN(4) .AND. ZCIS(:)>XCTMIN(4)) + ZLBDAI(:) = ( XLBI*ZCIS(:) / ZRIS(:) )**XLBEXI ZZY(:) = ZRHODREF(:)**(-XCEXVT) * ZLBDAI(:)**(-XDI) ZZW(:) = XFSEDRI * ZRIS(:) * ZZY(:) * ZRHODREF(:) ZZX(:) = XFSEDCI * ZCIS(:) * ZZY(:) * ZRHODREF(:) END WHERE ZWSEDR(:,:,:) = UNPACK( ZZW(:),MASK=GSEDIM(:,:,:),FIELD=0.0 ) + ZWSEDR(:,:,IKB:IKE) = MIN( ZWSEDR(:,:,IKB:IKE), PRIS(:,:,IKB:IKE) * PRHODREF(:,:,IKB:IKE) / ZW(:,:,IKB:IKE) ) ZWSEDC(:,:,:) = UNPACK( ZZX(:),MASK=GSEDIM(:,:,:),FIELD=0.0 ) + ZWSEDC(:,:,IKB:IKE) = MIN( ZWSEDC(:,:,IKB:IKE), PCIS(:,:,IKB:IKE) * PRHODREF(:,:,IKB:IKE) / ZW(:,:,IKB:IKE) ) DO JK = IKB , IKE PRIS(:,:,JK) = PRIS(:,:,JK) + ZW(:,:,JK)* & (ZWSEDR(:,:,JK+1)-ZWSEDR(:,:,JK))/PRHODREF(:,:,JK) @@ -259,17 +257,18 @@ DO JN = 1 , KSPLITG !* 2.22 for aggregates ! ZZW(:) = 0. - IF( MAXVAL(PRSS(:,:,:))>ZRTMIN(5) ) THEN + IF( MAXVAL(PRSS(:,:,:))>XRTMIN(5) ) THEN ALLOCATE(ZRSS(ISEDIM)) DO JL = 1,ISEDIM ZRSS(JL) = PRSS(I1(JL),I2(JL),I3(JL)) END DO - WHERE( ZRSS(:)>ZRTMIN(5) ) + WHERE( ZRSS(:)>XRTMIN(5) ) ! Correction BVIE ZRHODREF ! ZZW(:) = XFSEDS * ZRSS(:)**XEXSEDS * ZRHODREF(:)**(XEXSEDS-XCEXVT) ZZW(:) = XFSEDS * ZRSS(:)**XEXSEDS * ZRHODREF(:)**(-XCEXVT) * ZRHODREF(:) END WHERE ZWSEDR(:,:,:) = UNPACK( ZZW(:),MASK=GSEDIM(:,:,:),FIELD=0.0 ) + ZWSEDR(:,:,IKB:IKE) = MIN( ZWSEDR(:,:,IKB:IKE), PRSS(:,:,IKB:IKE) * PRHODREF(:,:,IKB:IKE) / ZW(:,:,IKB:IKE) ) DO JK = IKB , IKE PRSS(:,:,JK) = PRSS(:,:,JK) + ZW(:,:,JK)* & (ZWSEDR(:,:,JK+1)-ZWSEDR(:,:,JK))/PRHODREF(:,:,JK) @@ -284,17 +283,18 @@ DO JN = 1 , KSPLITG !* 2.23 for graupeln ! ZZW(:) = 0. - IF( MAXVAL(PRGS(:,:,:))>ZRTMIN(6) ) THEN + IF( MAXVAL(PRGS(:,:,:))>XRTMIN(6) ) THEN ALLOCATE(ZRGS(ISEDIM)) DO JL = 1,ISEDIM ZRGS(JL) = PRGS(I1(JL),I2(JL),I3(JL)) END DO - WHERE( ZRGS(:)>ZRTMIN(6) ) + WHERE( ZRGS(:)>XRTMIN(6) ) ! Correction BVIE ZRHODREF ! ZZW(:) = XFSEDG * ZRGS(:)**XEXSEDG * ZRHODREF(:)**(XEXSEDG-XCEXVT) ZZW(:) = XFSEDG * ZRGS(:)**XEXSEDG * ZRHODREF(:)**(-XCEXVT) * ZRHODREF(:) END WHERE ZWSEDR(:,:,:) = UNPACK( ZZW(:),MASK=GSEDIM(:,:,:),FIELD=0.0 ) + ZWSEDR(:,:,IKB:IKE) = MIN( ZWSEDR(:,:,IKB:IKE), PRGS(:,:,IKB:IKE) * PRHODREF(:,:,IKB:IKE) / ZW(:,:,IKB:IKE) ) DO JK = IKB , IKE PRGS(:,:,JK) = PRGS(:,:,JK) + ZW(:,:,JK)* & (ZWSEDR(:,:,JK+1)-ZWSEDR(:,:,JK))/PRHODREF(:,:,JK) @@ -309,17 +309,18 @@ DO JN = 1 , KSPLITG !* 2.23 for hail ! ZZW(:) = 0. - IF( MAXVAL(PRHS(:,:,:))>ZRTMIN(7) ) THEN + IF( MAXVAL(PRHS(:,:,:))>XRTMIN(7) ) THEN ALLOCATE(ZRHS(ISEDIM)) DO JL = 1,ISEDIM ZRHS(JL) = PRHS(I1(JL),I2(JL),I3(JL)) END DO - WHERE( ZRHS(:)>ZRTMIN(7) ) + WHERE( ZRHS(:)>XRTMIN(7) ) ! Correction BVIE ZRHODREF ! ZZW(:) = XFSEDH * ZRHS(:)**XEXSEDH * ZRHODREF(:)**(XEXSEDH-XCEXVT) ZZW(:) = XFSEDH * ZRHS(:)**XEXSEDH * ZRHODREF(:)**(-XCEXVT) * ZRHODREF(:) END WHERE ZWSEDR(:,:,:) = UNPACK( ZZW(:),MASK=GSEDIM(:,:,:),FIELD=0.0 ) + ZWSEDR(:,:,IKB:IKE) = MIN( ZWSEDR(:,:,IKB:IKE), PRHS(:,:,IKB:IKE) * PRHODREF(:,:,IKB:IKE) / ZW(:,:,IKB:IKE) ) DO JK = IKB , IKE PRHS(:,:,JK) = PRHS(:,:,JK) + ZW(:,:,JK)* & (ZWSEDR(:,:,JK+1)-ZWSEDR(:,:,JK))/PRHODREF(:,:,JK) @@ -348,19 +349,6 @@ DO JN = 1 , KSPLITG END IF END IF END DO -! -! -! Budget storage -IF (LBU_ENABLE) THEN - IF (LBUDGET_RI .AND. OSEDI) & - CALL BUDGET (PRIS(:,:,:)*PRHODJ(:,:,:),9 ,'SEDI_BU_RRI') - IF (LBUDGET_RS) CALL BUDGET (PRSS(:,:,:)*PRHODJ(:,:,:),10 ,'SEDI_BU_RRS') - IF (LBUDGET_RG) CALL BUDGET (PRGS(:,:,:)*PRHODJ(:,:,:),11 ,'SEDI_BU_RRG') - IF (LBUDGET_RH) CALL BUDGET (PRHS(:,:,:)*PRHODJ(:,:,:),12 ,'SEDI_BU_RRH') - IF (LBUDGET_SV) THEN - IF (OSEDI) CALL BUDGET (PCIS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NI,'SEDI_BU_RSV') ! RCI - END IF -END IF !++cb++ DEALLOCATE(ZRTMIN) !--cb-- diff --git a/src/MNH/lima_conversion_melting_snow.f90 b/src/MNH/lima_conversion_melting_snow.f90 new file mode 100644 index 0000000000000000000000000000000000000000..3102a165b0f4c0fb03e0e422c1b5b907024363c7 --- /dev/null +++ b/src/MNH/lima_conversion_melting_snow.f90 @@ -0,0 +1,130 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_CONVERSION_MELTING_SNOW +! ################################# +! +INTERFACE + SUBROUTINE LIMA_CONVERSION_MELTING_SNOW (LDCOMPUTE, & + PRHODREF, PPRES, PT, PKA, PDV, PCJ, & + PRVT, PRST, PLBDS, & + P_RS_CMEL, & + PA_RS, PA_RG ) +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +REAL, DIMENSION(:), INTENT(IN) :: PPRES ! +REAL, DIMENSION(:), INTENT(IN) :: PT ! +REAL, DIMENSION(:), INTENT(IN) :: PKA ! +REAL, DIMENSION(:), INTENT(IN) :: PDV ! +REAL, DIMENSION(:), INTENT(IN) :: PCJ ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! +REAL, DIMENSION(:), INTENT(IN) :: PRST ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDS ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_CMEL +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +! +END SUBROUTINE LIMA_CONVERSION_MELTING_SNOW +END INTERFACE +END MODULE MODI_LIMA_CONVERSION_MELTING_SNOW +! +! ############################################################################## + SUBROUTINE LIMA_CONVERSION_MELTING_SNOW (LDCOMPUTE, & + PRHODREF, PPRES, PT, PKA, PDV, PCJ, & + PRVT, PRST, PLBDS, & + P_RS_CMEL, & + PA_RS, PA_RG ) +! ############################################################################## +! +!! PURPOSE +!! ------- +!! Compute the conversion-melting of snow into graupel +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XTT, XMV, XMD, XLVTT, XCPV, XCL, XESTT, XRV +USE MODD_PARAM_LIMA, ONLY : XRTMIN +USE MODD_PARAM_LIMA_MIXED, ONLY : XFSCVMG +USE MODD_PARAM_LIMA_COLD, ONLY : X0DEPS, XEX0DEPS, X1DEPS, XEX1DEPS +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +REAL, DIMENSION(:), INTENT(IN) :: PPRES ! +REAL, DIMENSION(:), INTENT(IN) :: PT ! +REAL, DIMENSION(:), INTENT(IN) :: PKA ! +REAL, DIMENSION(:), INTENT(IN) :: PDV ! +REAL, DIMENSION(:), INTENT(IN) :: PCJ ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! +REAL, DIMENSION(:), INTENT(IN) :: PRST ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDS ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_CMEL +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PRST)) :: ZW ! work arrays +! +!------------------------------------------------------------------------------- +! +! +!* 1. Conversion-melting of snow +! -------------------------- +! +! +P_RS_CMEL(:)=0. +! +ZW(:) = 0.0 +WHERE( (PRST(:)>XRTMIN(5)) .AND. (PT(:)>XTT) .AND. LDCOMPUTE(:) ) + ZW(:) = PRVT(:)*PPRES(:)/((XMV/XMD)+PRVT(:)) ! Vapor pressure + ZW(:) = PKA(:)*(XTT-PT(:)) + & + ( PDV(:)*(XLVTT + ( XCPV - XCL ) * ( PT(:) - XTT )) & + *(XESTT-ZW(:))/(XRV*PT(:)) ) +! +! compute RSMLT +! + ZW(:) = XFSCVMG*MAX( 0.0,( -ZW(:) * & + ( X0DEPS* PLBDS(:)**XEX0DEPS + & + X1DEPS*PCJ(:)*PLBDS(:)**XEX1DEPS ) ))!- & +! On ne tient pas compte de la collection de pluie et gouttelettes par la neige si T>0 !!!! +! Note that no heat is exchanged because the graupeln produced are still icy!!! + P_RS_CMEL(:) = - ZW(:) +! +END WHERE +! +PA_RS(:) = PA_RS(:) + P_RS_CMEL(:) +PA_RG(:) = PA_RG(:) - P_RS_CMEL(:) +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_CONVERSION_MELTING_SNOW diff --git a/src/MNH/lima_droplets_accretion.f90 b/src/MNH/lima_droplets_accretion.f90 new file mode 100644 index 0000000000000000000000000000000000000000..6344246004384d4e0acc4bebef3f83fd9e6b5b50 --- /dev/null +++ b/src/MNH/lima_droplets_accretion.f90 @@ -0,0 +1,172 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_DROPLETS_ACCRETION +! ################################# +! +INTERFACE + SUBROUTINE LIMA_DROPLETS_ACCRETION (LDCOMPUTE, & + PRHODREF, & + PRCT, PRRT, PCCT, PCRT, & + PLBDC, PLBDC3, PLBDR, PLBDR3, & + P_RC_ACCR, P_CC_ACCR, & + PA_RC, PA_CC, PA_RR ) +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! Rain m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! Cloud water conc. at t +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! Rain conc. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDC ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDC3 ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR3 ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_ACCR +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_ACCR +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +! +END SUBROUTINE LIMA_DROPLETS_ACCRETION +END INTERFACE +END MODULE MODI_LIMA_DROPLETS_ACCRETION +! +! ##################################################################### + SUBROUTINE LIMA_DROPLETS_ACCRETION (LDCOMPUTE, & + PRHODREF, & + PRCT, PRRT, PCCT, PCRT, & + PLBDC, PLBDC3, PLBDR, PLBDR3, & + P_RC_ACCR, P_CC_ACCR, & + PA_RC, PA_CC, PA_RR ) +! ##################################################################### +! +!! PURPOSE +!! ------- +!! Compute the accretion of cloud droplets by rain drops +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN +USE MODD_PARAM_LIMA_WARM, ONLY : XLAUTR, XAUTO1, XLAUTR_THRESHOLD, & + XACCR4, XACCR5, XACCR3, XACCR2, XACCR1, & + XACCR_CLARGE1, XACCR_CLARGE2, XACCR_RLARGE1, XACCR_RLARGE2, & + XACCR_CSMALL1, XACCR_CSMALL2, XACCR_RSMALL1, XACCR_RSMALL2 +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! Rain m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! Cloud water conc. at t +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! Rain conc. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDC ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDC3 ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR3 ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_ACCR +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_ACCR +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PRCT)) :: ZW1, ZW2, ZW3, ZW4 ! work arrays +LOGICAL, DIMENSION(SIZE(PRCT)) :: GACCR +! +!------------------------------------------------------------------------------- +! +! +! +!* 1. Accretion of cloud droplets on rain drops +! -------------------------------------------- +! +P_RC_ACCR(:) = 0.0 +P_CC_ACCR(:) = 0.0 +! +ZW1(:) = 0.0 +ZW2(:) = 0.0 +ZW3(:) = 0.0 +ZW4(:) = 0.0 +! +WHERE( PRCT(:)>XRTMIN(2) .AND. PCCT(:)>XCTMIN(2) .AND. PRRT(:)>XRTMIN(3) .AND. PCRT(:)>XCTMIN(3) .AND. LDCOMPUTE(:) ) + ZW2(:) = MAX( 0.0,XLAUTR*PRHODREF(:)*PRCT(:)*(XAUTO1/PLBDC(:)**4-XLAUTR_THRESHOLD) ) ! L + ZW4(:) = XACCR1/PLBDR(:) +END WHERE +! +GACCR(:) = LDCOMPUTE(:) .AND. & + PRRT(:)>XRTMIN(3) .AND. & + PCRT(:)>XCTMIN(3) .AND. & + PRCT(:)>XRTMIN(2) .AND. & + PCCT(:)>XCTMIN(2) .AND. & + (PRRT(:)>1.2*ZW2(:)/PRHODREF(:) .OR. & + ZW4(:)>=MAX(XACCR2,XACCR3/(XACCR4/PLBDC(:)-XACCR5)) ) +! +! Accretion for D>100 10-6 m +WHERE( GACCR(:).AND.(ZW4(:)>1.E-4) ) + ZW3(:) = MIN(PLBDC3(:) / PLBDR3(:),1.E15) + ZW1(:) = ( PCCT(:)*PCRT(:) / PLBDC3(:) )*PRHODREF(:) + ZW2(:) = ZW1(:)*(XACCR_CLARGE1+XACCR_CLARGE2*ZW3(:)) +! + P_CC_ACCR(:) = - ZW2(:) +! + ZW1(:) = ( ZW1(:) / PLBDC3(:) ) + ZW2(:) = ZW1(:)*(XACCR_RLARGE1+XACCR_RLARGE2*ZW3(:)) +! + P_RC_ACCR(:) = - ZW2(:) +END WHERE +! +! Accretion for D<100 10-6 m +WHERE( GACCR(:).AND.(ZW4(:)<=1.E-4) ) + ZW3(:) = MIN(PLBDC3(:) / PLBDR3(:), 1.E8) + ZW1(:) = ( PCCT(:)*PCRT(:) / PLBDC3(:) )*PRHODREF(:) + ZW1(:) = ZW1(:)/PLBDC3(:) + + ZW3(:) = ZW3(:)**2 + ZW2(:) = ZW1(:)*(XACCR_CSMALL1+XACCR_CSMALL2*ZW3(:)) +! + P_CC_ACCR(:) = - ZW2(:) +! + ZW1(:) = ZW1(:) / PLBDC3(:) + ZW2(:) = ZW1(:)*(XACCR_RSMALL1+XACCR_RSMALL2*ZW3(:)) +! + P_RC_ACCR(:) = - ZW2(:) +END WHERE +! +PA_RC(:) = PA_RC(:) + P_RC_ACCR(:) +PA_CC(:) = PA_CC(:) + P_CC_ACCR(:) +PA_RR(:) = PA_RR(:) - P_RC_ACCR(:) +! +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_DROPLETS_ACCRETION diff --git a/src/MNH/lima_droplets_autoconversion.f90 b/src/MNH/lima_droplets_autoconversion.f90 new file mode 100644 index 0000000000000000000000000000000000000000..2f2c911100c174146817e1ab5db7e2ae87966098 --- /dev/null +++ b/src/MNH/lima_droplets_autoconversion.f90 @@ -0,0 +1,140 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_DROPLETS_AUTOCONVERSION +! ################################# +! +INTERFACE + SUBROUTINE LIMA_DROPLETS_AUTOCONVERSION (LDCOMPUTE, & + PRHODREF, & + PRCT, PLBDC, PLBDR, & + P_RC_AUTO, P_CC_AUTO, P_CR_AUTO,& + PA_RC, PA_CC, PA_RR, PA_CR ) +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDC ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_AUTO +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_AUTO +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_AUTO +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +! +END SUBROUTINE LIMA_DROPLETS_AUTOCONVERSION +END INTERFACE +END MODULE MODI_LIMA_DROPLETS_AUTOCONVERSION +! +! ########################################################################## + SUBROUTINE LIMA_DROPLETS_AUTOCONVERSION (LDCOMPUTE, & + PRHODREF, & + PRCT, PLBDC, PLBDR, & + P_RC_AUTO, P_CC_AUTO, P_CR_AUTO,& + PA_RC, PA_CC, PA_RR, PA_CR ) +! ########################################################################## +! +!! PURPOSE +!! ------- +!! Compute the autoconversion of cloud droplets +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAM_LIMA, ONLY : XRTMIN +USE MODD_PARAM_LIMA_WARM, ONLY : XLAUTR, XAUTO1, XLAUTR_THRESHOLD, & + XITAUTR, XAUTO2, XITAUTR_THRESHOLD, & + XACCR4, XACCR5, XACCR3, XACCR1, XAC +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDC ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_AUTO +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_AUTO +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_AUTO +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PRCT)) :: ZW1, ZW2, ZW3 ! work arrays +! +!------------------------------------------------------------------------------- +! +! +! +!* 1. Autoconversion of cloud droplets (Berry-Reinhardt parameterization) +! ---------------------------------------------------------------------- +! +! +! +P_RC_AUTO(:) = 0.0 +P_CC_AUTO(:) = 0.0 +P_CR_AUTO(:) = 0.0 +! +ZW3(:) = 0.0 +ZW2(:) = 0.0 +ZW1(:) = 0.0 +WHERE( PRCT(:)>XRTMIN(2) .AND. PLBDC(:)>0. .AND. LDCOMPUTE(:) ) + ZW2(:) = MAX( 0.0, & + XLAUTR*PRHODREF(:)*PRCT(:)*(XAUTO1/min(PLBDC(:),1.e9)**4-XLAUTR_THRESHOLD) ) ! L +! + ZW3(:) = MAX( 0.0, & + XITAUTR*ZW2(:)*PRCT(:)*(XAUTO2/PLBDC(:)-XITAUTR_THRESHOLD) ) ! L/tau +! + P_RC_AUTO(:) = - ZW3(:) +! + ZW1(:) = MIN( MIN( 1.2E4, & + (XACCR4/PLBDC(:)-XACCR5)/XACCR3 ), & + PLBDR(:)/XACCR1 ) ! D**-1 threshold diameter for + ! switching the autoconversion regimes + ! min (80 microns, D_h, D_r) + ZW3(:) = ZW3(:) * MAX( 0.0,ZW1(:) )**3 / XAC +! + P_CC_AUTO(:) = 0. + P_CR_AUTO(:) = ZW3(:) +! + PA_RC(:) = PA_RC(:) + P_RC_AUTO(:) + PA_CC(:) = PA_CC(:) + PA_RR(:) = PA_RR(:) - P_RC_AUTO(:) + PA_CR(:) = PA_CR(:) + P_CR_AUTO(:) +END WHERE +! +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_DROPLETS_AUTOCONVERSION diff --git a/src/MNH/lima_droplets_hom_freezing.f90 b/src/MNH/lima_droplets_hom_freezing.f90 new file mode 100644 index 0000000000000000000000000000000000000000..db27f466e707a422bea4756219d2ff30f024d8e8 --- /dev/null +++ b/src/MNH/lima_droplets_hom_freezing.f90 @@ -0,0 +1,145 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_DROPLETS_HOM_FREEZING +! ################################# +! +INTERFACE + SUBROUTINE LIMA_DROPLETS_HOM_FREEZING (PTSTEP, LDCOMPUTE, & + PT, PLVFACT, PLSFACT, & + PRCT, PCCT, PLBDC, & + P_TH_HONC, P_RC_HONC, P_CC_HONC, & + PA_TH, PA_RC, PA_CC, PA_RI, PA_CI ) +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PT ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDC ! Cloud water lambda +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_HONC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_HONC +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_HONC +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +! +END SUBROUTINE LIMA_DROPLETS_HOM_FREEZING +END INTERFACE +END MODULE MODI_LIMA_DROPLETS_HOM_FREEZING +! +! ########################################################################## + SUBROUTINE LIMA_DROPLETS_HOM_FREEZING (PTSTEP, LDCOMPUTE, & + PT, PLVFACT, PLSFACT, & + PRCT, PCCT, PLBDC, & + P_TH_HONC, P_RC_HONC, P_CC_HONC, & + PA_TH, PA_RC, PA_CC, PA_RI, PA_CI ) +! ########################################################################## +! +!! PURPOSE +!! ------- +!! Compute the cloud droplets homogeneous freezing rate +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XTT +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN, XNUC +USE MODD_PARAM_LIMA_COLD, ONLY : XC_HONC, XTEXP1_HONC, XTEXP2_HONC, XTEXP3_HONC, & + XTEXP4_HONC, XTEXP5_HONC +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PT ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDC ! Cloud water lambda +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_HONC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_HONC +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_HONC +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PT)) :: ZZW, ZZX, ZZY, ZTCELSIUS +! +!------------------------------------------------------------------------------- +! +! +!* 1. Cloud droplets homogeneous freezing +! ----------------------------------- +! +! +P_TH_HONC(:) = 0. +P_RC_HONC(:) = 0. +P_CC_HONC(:) = 0. +! +WHERE ( (PT(:)<XTT-35.0) .AND. (PCCT(:)>XCTMIN(2)) .AND. (PRCT(:)>XRTMIN(2)) ) + ZTCELSIUS(:) = PT(:)-XTT ! T [°C] + ! + ZZW(:) = 0.0 + ZZX(:) = 0.0 + ZZY(:) = 0.0 + + ZZX(:) = 1.0 / ( 1.0 + (XC_HONC/PLBDC(:))*PTSTEP* & + EXP( XTEXP1_HONC + ZTCELSIUS(:)*( & + XTEXP2_HONC + ZTCELSIUS(:)*( & + XTEXP3_HONC + ZTCELSIUS(:)*( & + XTEXP4_HONC + ZTCELSIUS(:)*XTEXP5_HONC))) ) )**XNUC +! + ZZW(:) = PCCT(:) * (1.0 - ZZX(:)) ! CCHONI + ZZY(:) = PRCT(:) * (1.0 - ZZX(:)) ! RCHONI +! + P_RC_HONC(:) = - ZZY(:)/PTSTEP + P_CC_HONC(:) = - ZZW(:)/PTSTEP + P_TH_HONC(:) = P_RC_HONC(:) * (PLSFACT(:)-PLVFACT(:)) +! + PA_TH(:) = PA_TH(:) + P_TH_HONC(:) + PA_RC(:) = PA_RC(:) + P_RC_HONC(:) + PA_CC(:) = PA_CC(:) + P_CC_HONC(:) + PA_RI(:) = PA_RI(:) - P_RC_HONC(:) + PA_CI(:) = PA_CI(:) - P_CC_HONC(:) +! +END WHERE +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_DROPLETS_HOM_FREEZING diff --git a/src/MNH/lima_droplets_riming_snow.f90 b/src/MNH/lima_droplets_riming_snow.f90 new file mode 100644 index 0000000000000000000000000000000000000000..197458b65d2216093c3c0a1b2e38a86486066892 --- /dev/null +++ b/src/MNH/lima_droplets_riming_snow.f90 @@ -0,0 +1,249 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_DROPLETS_RIMING_SNOW +! ################################# +! +INTERFACE + SUBROUTINE LIMA_DROPLETS_RIMING_SNOW (PTSTEP, LDCOMPUTE, & + PRHODREF, PT, & + PRCT, PCCT, PRST, PLBDC, PLBDS, PLVFACT, PLSFACT, & + P_TH_RIM, P_RC_RIM, P_CC_RIM, P_RS_RIM, P_RG_RIM, & + P_RI_HMS, P_CI_HMS, P_RS_HMS, & + PA_TH, PA_RC, PA_CC, PA_RI, PA_CI, PA_RS, PA_RG ) +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! +REAL, DIMENSION(:), INTENT(IN) :: PT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PRST ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDC ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDS ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_RIM +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_HMS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_HMS +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_HMS +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +! +END SUBROUTINE LIMA_DROPLETS_RIMING_SNOW +END INTERFACE +END MODULE MODI_LIMA_DROPLETS_RIMING_SNOW +! +! ######################################################################################### + SUBROUTINE LIMA_DROPLETS_RIMING_SNOW (PTSTEP, LDCOMPUTE, & + PRHODREF, PT, & + PRCT, PCCT, PRST, PLBDC, PLBDS, PLVFACT, PLSFACT, & + P_TH_RIM, P_RC_RIM, P_CC_RIM, P_RS_RIM, P_RG_RIM, & + P_RI_HMS, P_CI_HMS, P_RS_HMS, & + PA_TH, PA_RC, PA_CC, PA_RI, PA_CI, PA_RS, PA_RG ) +! ######################################################################################### +! +!! PURPOSE +!! ------- +!! Compute the cloud droplets riming of the aggregates rate, and the associated +!! Hallett-Mossop ice production rate +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XTT +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCEXVT +USE MODD_PARAM_LIMA_MIXED, ONLY : NGAMINC, XRIMINTP1, XRIMINTP2, XGAMINC_RIM1, XGAMINC_RIM2, & + XCRIMSS, XEXCRIMSS, XSRIMCG, XEXSRIMCG, & + XHMLINTP1, XHMLINTP2, XGAMINC_HMC, XHM_FACTS, XHMTMIN, XHMTMAX +USE MODD_PARAM_LIMA_COLD, ONLY : XMNU0 +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! +REAL, DIMENSION(:), INTENT(IN) :: PT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! +REAL, DIMENSION(:), INTENT(IN) :: PRST ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDC ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDS ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_RIM +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_HMS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_HMS +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_HMS +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +! +!* 0.2 Declarations of local variables : +! +LOGICAL, DIMENSION(SIZE(PRCT)) :: GRIM +! +REAL, DIMENSION(SIZE(PRCT)) :: ZZW1, ZZW2, ZZW3, ZZW4 +! +INTEGER, DIMENSION(SIZE(PRCT)) :: IVEC1,IVEC2 ! Vectors of indices +REAL, DIMENSION(SIZE(PRCT)) :: ZVEC1,ZVEC2 ! Work vectors +! +!------------------------------------------------------------------------------- +! +! +P_TH_RIM(:) = 0. +P_RC_RIM(:) = 0. +P_CC_RIM(:) = 0. +P_RS_RIM(:) = 0. +P_RG_RIM(:) = 0. +! +P_RI_HMS(:) = 0. +P_CI_HMS(:) = 0. +P_RS_HMS(:) = 0. +! +ZZW1(:) = 0. +ZZW2(:) = 0. +ZZW3(:) = 0. +ZZW4(:) = 0. +! +!* Cloud droplet riming of the aggregates +! -------------------------------------- +! +! +GRIM(:) = .False. +GRIM(:) = (PRCT(:)>XRTMIN(2)) .AND. (PRST(:)>XRTMIN(5)) .AND. (PT(:)<XTT) .AND. LDCOMPUTE(:) +! +WHERE( GRIM ) +! + ZVEC1(:) = PLBDS(:) +! +! 1. find the next lower indice for the ZLBDAS in the geometrical +! set of Lbda_s used to tabulate some moments of the incomplete +! gamma function +! + ZVEC2(:) = MAX( 1.0001, MIN( FLOAT(NGAMINC)-0.0001, & + XRIMINTP1 * LOG( ZVEC1(:) ) + XRIMINTP2 ) ) + IVEC2(:) = INT( ZVEC2(:) ) + ZVEC2(:) = ZVEC2(:) - FLOAT( IVEC2(:) ) +! +! 2. perform the linear interpolation of the normalized +! "2+XDS"-moment of the incomplete gamma function +! + ZVEC1(:) = XGAMINC_RIM1( IVEC2(:)+1 )* ZVEC2(:) & + - XGAMINC_RIM1( IVEC2(:) )*(ZVEC2(:) - 1.0) + ZZW1(:) = ZVEC1(:) +! +! 3. perform the linear interpolation of the normalized +! "XBS"-moment of the incomplete gamma function +! + ZVEC1(:) = XGAMINC_RIM2( IVEC2(:)+1 )* ZVEC2(:) & + - XGAMINC_RIM2( IVEC2(:) )*(ZVEC2(:) - 1.0) + ZZW2(:) = ZVEC1(:) +! +! 4. riming +! + ! Cloud droplets collected + P_RC_RIM(:) = - XCRIMSS * PRCT(:) * PLBDS(:)**XEXCRIMSS * PRHODREF(:)**(-XCEXVT) + P_CC_RIM(:) = P_RC_RIM(:) *(PCCT(:)/PRCT(:)) ! Lambda_c**3 + ! + ! Cloud droplets collected on small aggregates add to snow + P_RS_RIM(:) = - P_RC_RIM(:) * ZZW1(:) + ! + ! Cloud droplets collected on large aggregates add to graupel + P_RG_RIM(:) = - P_RC_RIM(:) - P_RS_RIM(:) + ! + ! Large aggregates collecting droplets add to graupel (instant process ???) + ZZW3(:) = XSRIMCG * PLBDS(:)**XEXSRIMCG * (1.0 - ZZW2(:))/(PTSTEP*PRHODREF(:)) + P_RS_RIM(:) = P_RS_RIM(:) - ZZW3(:) + P_RG_RIM(:) = P_RG_RIM(:) + ZZW3(:) + ! + P_TH_RIM(:) = - P_RC_RIM(:)*(PLSFACT(:)-PLVFACT(:)) +END WHERE +! +! +!* Hallett-Mossop ice production (HMS) +! ----------------------------------- +! +! +GRIM(:) = .False. +GRIM(:) = (PT(:)<XHMTMAX) .AND. (PT(:)>XHMTMIN) .AND. & + (PRST(:)>XRTMIN(5)) .AND. (PRCT(:)>XRTMIN(2)) .AND. & + LDCOMPUTE(:) +! +WHERE ( GRIM ) +! + ZVEC1(:) = PLBDC(:) + ZVEC2(:) = MAX( 1.0001, MIN( FLOAT(NGAMINC)-0.0001, & + XHMLINTP1 * LOG( ZVEC1(:) ) + XHMLINTP2 ) ) + IVEC2(:) = INT( ZVEC2(:) ) + ZVEC2(:) = ZVEC2(:) - FLOAT( IVEC2(:) ) + ZVEC1(:) = XGAMINC_HMC( IVEC2(:)+1 )* ZVEC2(:) & + - XGAMINC_HMC( IVEC2(:) )*(ZVEC2(:) - 1.0) + ZZW4(:) = ZVEC1(:) ! Large droplets +! + WHERE ( ZZW4(:)<0.99 ) + P_CI_HMS(:) = - P_RC_RIM(:) * (PCCT(:)/PRCT(:)) * (1.0-ZZW4(:)) * XHM_FACTS * & + MAX( 0.0, MIN( (PT(:)-XHMTMIN)/3.0,(XHMTMAX-PT(:))/2.0 ) ) ! CCHMSI +! + P_RI_HMS(:) = P_CI_HMS(:) * XMNU0 ! RCHMSI + P_RS_HMS(:) = - P_RI_HMS(:) + END WHERE + +END WHERE +! +! +PA_RC(:) = PA_RC(:) + P_RC_RIM(:) +PA_CC(:) = PA_CC(:) + P_CC_RIM(:) +PA_RI(:) = PA_RI(:) + P_RI_HMS(:) +PA_CI(:) = PA_CI(:) + P_CI_HMS(:) +PA_RS(:) = PA_RS(:) + P_RS_RIM(:) + P_RS_HMS(:) +PA_RG(:) = PA_RG(:) + P_RG_RIM(:) +PA_TH(:) = PA_TH(:) + P_TH_RIM(:) +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_DROPLETS_RIMING_SNOW diff --git a/src/MNH/lima_droplets_self_collection.f90 b/src/MNH/lima_droplets_self_collection.f90 new file mode 100644 index 0000000000000000000000000000000000000000..c97e0cc55b1f66a8b2e30fe659810042dba5e7da --- /dev/null +++ b/src/MNH/lima_droplets_self_collection.f90 @@ -0,0 +1,100 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_DROPLETS_SELF_COLLECTION +! ################################# +! +INTERFACE + SUBROUTINE LIMA_DROPLETS_SELF_COLLECTION (LDCOMPUTE, & + PRHODREF, & + PCCT, PLBDC3, & + P_CC_SELF, & + PA_CC ) +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +! +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDC3 ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_SELF +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +! +END SUBROUTINE LIMA_DROPLETS_SELF_COLLECTION +END INTERFACE +END MODULE MODI_LIMA_DROPLETS_SELF_COLLECTION +! +! ###################################################################### + SUBROUTINE LIMA_DROPLETS_SELF_COLLECTION (LDCOMPUTE, & + PRHODREF, & + PCCT, PLBDC3, & + P_CC_SELF, & + PA_CC ) +! ###################################################################### +! +!! PURPOSE +!! ------- +!! Compute the self-collection of cloud droplets rate +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAM_LIMA, ONLY : XCTMIN +USE MODD_PARAM_LIMA_WARM, ONLY : XSELFC +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +! +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDC3 ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_SELF +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PCCT)) :: ZW ! work arrays +! +!------------------------------------------------------------------------------- +! +! +!* 1. Cloud droplets self collection +! ------------------------------ +! +! +P_CC_SELF(:)=0. +! +WHERE( PCCT(:)>XCTMIN(2) .AND. LDCOMPUTE(:) ) + ZW(:) = XSELFC*(PCCT(:)/PLBDC3(:))**2 * PRHODREF(:) ! analytical integration + P_CC_SELF(:) = - ZW(:) + PA_CC(:) = PA_CC(:) + P_CC_SELF(:) +END WHERE +! +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_DROPLETS_SELF_COLLECTION diff --git a/src/MNH/lima_drops_break_up.f90 b/src/MNH/lima_drops_break_up.f90 new file mode 100644 index 0000000000000000000000000000000000000000..697c682469036cd49ecd2f8906efd9bdd1bdb093 --- /dev/null +++ b/src/MNH/lima_drops_break_up.f90 @@ -0,0 +1,100 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ############################### + MODULE MODI_LIMA_DROPS_BREAK_UP +! ############################### +! +INTERFACE + SUBROUTINE LIMA_DROPS_BREAK_UP (LDCOMPUTE, & + PCRT, PRRT, & + P_CR_BRKU, & + PB_CR ) + +! +LOGICAL, DIMENSION(:), INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_BRKU ! Concentration change (#/kg) +REAL, DIMENSION(:), INTENT(INOUT) :: PB_CR ! Cumulated concentration change (#/kg) +! +END SUBROUTINE LIMA_DROPS_BREAK_UP +END INTERFACE +END MODULE MODI_LIMA_DROPS_BREAK_UP +! +! +! ########################################## + SUBROUTINE LIMA_DROPS_BREAK_UP (LDCOMPUTE, & + PCRT, PRRT, & + P_CR_BRKU, & + PB_CR ) + +! ########################################## +! +!! +!! PURPOSE +!! ------- +!! Numerical filter to prevent drops from growing too much +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAM_LIMA, ONLY : XCTMIN, XRTMIN +USE MODD_PARAM_LIMA_WARM, ONLY : XACCR1, XLBEXR, XLBR, XSPONBUD1, XSPONBUD3, XSPONCOEF2 +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +LOGICAL, DIMENSION(:), INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_BRKU ! Concentration change (#/kg) +REAL, DIMENSION(:), INTENT(INOUT) :: PB_CR ! Cumulated concentration change (#/kg) +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PCRT)) :: ZWLBDR,ZWLBDR3 +INTEGER :: JL +! +!------------------------------------------------------------------------------- +! +! SPONTANEOUS BREAK-UP (NUMERICAL FILTER) +! --------------------------------------- +! +P_CR_BRKU(:)=0. +! +ZWLBDR3(:) = 1.E30 +ZWLBDR(:) = 1.E10 +WHERE ( PRRT(:)>XRTMIN(3) .AND. PCRT(:)>XCTMIN(3) .AND. LDCOMPUTE(:) ) + ZWLBDR3(:) = XLBR * PCRT(:) / PRRT(:) + ZWLBDR(:) = ZWLBDR3(:)**XLBEXR +END WHERE +WHERE (ZWLBDR(:)<(XACCR1/XSPONBUD1) .AND. LDCOMPUTE(:)) + P_CR_BRKU(:) = PCRT(:)*( MAX((1.+XSPONCOEF2*(XACCR1/ZWLBDR(:)-XSPONBUD1)**2),& + (XACCR1/ZWLBDR(:)/XSPONBUD3)**3) -1. ) +END WHERE +! +PB_CR(:) = PB_CR(:) + P_CR_BRKU(:) +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_DROPS_BREAK_UP diff --git a/src/MNH/lima_drops_hom_freezing.f90 b/src/MNH/lima_drops_hom_freezing.f90 new file mode 100644 index 0000000000000000000000000000000000000000..b8382155bd2b89953b7a60ae0f54063d4c99af8e --- /dev/null +++ b/src/MNH/lima_drops_hom_freezing.f90 @@ -0,0 +1,144 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_DROPS_HOM_FREEZING +! ################################# +! +INTERFACE + SUBROUTINE LIMA_DROPS_HOM_FREEZING (PTSTEP, LDCOMPUTE, & + PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCRT, & + P_TH_HONR, P_RR_HONR, P_CR_HONR, & + PB_TH, PB_RR, PB_CR, PB_RG ) +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:), INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:), INTENT(IN) :: PPABST ! abs. pressure at time t +! +REAL, DIMENSION(:), INTENT(IN) :: PTHT ! Theta at time t +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRST ! Snow/aggregate m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! Graupel m.r. at t +! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! Rain water C. at t +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_HONR +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_HONR +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_HONR +REAL, DIMENSION(:), INTENT(INOUT) :: PB_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PB_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PB_CR +REAL, DIMENSION(:), INTENT(INOUT) :: PB_RG +! +END SUBROUTINE LIMA_DROPS_HOM_FREEZING +END INTERFACE +END MODULE MODI_LIMA_DROPS_HOM_FREEZING +! +! ############################################################################### + SUBROUTINE LIMA_DROPS_HOM_FREEZING (PTSTEP, LDCOMPUTE, & + PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCRT, & + P_TH_HONR, P_RR_HONR, P_CR_HONR, & + PB_TH, PB_RR, PB_CR, PB_RG ) +! ############################################################################### +! +!! PURPOSE +!! ------- +!! Homogeneous freezing of rain drops below -35°C +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XP00, XRD, XCPD, XCPV, XCL, XCI, XTT, XLSTT, XLVTT +USE MODD_PARAM_LIMA, ONLY : XRTMIN +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:), INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:), INTENT(IN) :: PPABST ! abs. pressure at time t +! +REAL, DIMENSION(:), INTENT(IN) :: PTHT ! Theta at time t +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRST ! Snow/aggregate m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! Graupel m.r. at t +! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! Rain water C. at t +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_HONR +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_HONR +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_HONR +REAL, DIMENSION(:), INTENT(INOUT) :: PB_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PB_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PB_CR +REAL, DIMENSION(:), INTENT(INOUT) :: PB_RG +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PTHT)) :: & + ZW, & + ZT, & + ZLSFACT, & + ZLVFACT, & + ZTCELSIUS +! +!------------------------------------------------------------------------------- +! +P_TH_HONR(:) = 0. +P_RR_HONR(:) = 0. +P_CR_HONR(:) = 0. +! +! Temperature +ZT(:) = PTHT(:) * ( PPABST(:)/XP00 ) ** (XRD/XCPD) +ZTCELSIUS(:) = ZT(:)-XTT ! T [°C] +! +ZW(:) = PEXNREF(:)*( XCPD+XCPV*PRVT(:)+XCL*(PRCT(:)+PRRT(:)) & + +XCI*(PRIT(:)+PRST(:)+PRGT(:)) ) +ZLSFACT(:) = (XLSTT+(XCPV-XCI)*ZTCELSIUS(:))/ZW(:) ! L_s/(Pi_ref*C_ph) +ZLVFACT(:) = (XLVTT+(XCPV-XCL)*ZTCELSIUS(:))/ZW(:) ! L_v/(Pi_ref*C_ph) +! +ZW(:) = 0.0 +! +WHERE( (ZT(:)<XTT-35.0) .AND. (PRRT(:)>XRTMIN(3)) .AND. LDCOMPUTE(:) ) + P_TH_HONR(:) = PRRT(:)*(ZLSFACT(:)-ZLVFACT(:)) + P_RR_HONR(:) = - PRRT(:) + P_CR_HONR(:) = - PCRT(:) + PB_TH(:) = PB_TH(:) + P_TH_HONR(:) + PB_RR(:) = PB_RR(:) - PRRT(:) + PB_CR(:) = PB_CR(:) - PCRT(:) + PB_RG(:) = PB_RG(:) + PRRT(:) +ENDWHERE +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_DROPS_HOM_FREEZING diff --git a/src/MNH/lima_drops_self_collection.f90 b/src/MNH/lima_drops_self_collection.f90 new file mode 100644 index 0000000000000000000000000000000000000000..c5bdc6f91fe832689ffd23e4a7712ac76a2398c1 --- /dev/null +++ b/src/MNH/lima_drops_self_collection.f90 @@ -0,0 +1,130 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_DROPS_SELF_COLLECTION +! ################################# +! +INTERFACE + SUBROUTINE LIMA_DROPS_SELF_COLLECTION (LDCOMPUTE, & + PRHODREF, & + PCRT, PLBDR, PLBDR3, & + P_CR_SCBU, & + PA_CR ) +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR3 ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_SCBU +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +! +END SUBROUTINE LIMA_DROPS_SELF_COLLECTION +END INTERFACE +END MODULE MODI_LIMA_DROPS_SELF_COLLECTION +! +! ############################################################# + SUBROUTINE LIMA_DROPS_SELF_COLLECTION (LDCOMPUTE, & + PRHODREF, & + PCRT, PLBDR, PLBDR3, & + P_CR_SCBU, & + PA_CR ) +! ############################################################# +! +!! PURPOSE +!! ------- +!! Compute the self-collection and physical break-up of rain drops +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAM_LIMA, ONLY : XCTMIN +USE MODD_PARAM_LIMA_WARM, ONLY : XACCR1, XSCBUEXP1, XSCBU_EFF1, XSCBU_EFF2, & + XSCBU2, XSCBU3 +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! Rain drops C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR3 ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_SCBU +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PCRT)) :: & + ZW1, & ! work arrays + ZW2, & + ZW3, & + ZW4, & + ZSCBU +! +!------------------------------------------------------------------------------- +! +! +!* 1. Rain drops self-collection and break-up +! --------------------------------------- +! +! +P_CR_SCBU(:)=0. +! +ZW4(:) =0. +! +WHERE( PCRT(:)>XCTMIN(3) .AND. LDCOMPUTE(:) ) + ZW4(:) = XACCR1 / PLBDR(:) ! Mean diameter +END WHERE +ZSCBU(:)=1. +WHERE (ZW4(:)>=XSCBU_EFF1 .AND. PCRT(:)>XCTMIN(3) .AND. LDCOMPUTE(:)) & + ZSCBU(:) = EXP(XSCBUEXP1*(ZW4(:)-XSCBU_EFF1)) ! coalescence efficiency +WHERE (ZW4(:)>=XSCBU_EFF2 .AND. LDCOMPUTE(:)) ZSCBU(:) = 0.0 ! Break-up +! +ZW1(:) = 0.0 +ZW2(:) = 0.0 +ZW3(:) = 0.0 +! +WHERE (PCRT(:)>XCTMIN(3) .AND. (ZW4(:)>1.E-4) .AND. LDCOMPUTE(:)) ! analytical integration + ZW1(:) = XSCBU2 * PCRT(:)**2 / PLBDR3(:) ! D>100 10-6 m + ZW3(:) = ZW1(:)*ZSCBU(:) +END WHERE +! +WHERE (PCRT(:)>XCTMIN(3) .AND. (ZW4(:)<=1.E-4) .AND. LDCOMPUTE(:)) + ZW2(:) = XSCBU3 *(PCRT(:) / PLBDR3(:))**2 ! D<100 10-6 m + ZW3(:) = ZW2(:) +END WHERE +! +P_CR_SCBU(:) = - ZW3(:) * PRHODREF(:) +! +PA_CR(:) = PA_CR(:) + P_CR_SCBU(:) +! +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_DROPS_SELF_COLLECTION diff --git a/src/MNH/lima_drops_to_droplets_conv.f90 b/src/MNH/lima_drops_to_droplets_conv.f90 new file mode 100644 index 0000000000000000000000000000000000000000..b2c63fde29ab9a752faf1669c721d3cce9b47037 --- /dev/null +++ b/src/MNH/lima_drops_to_droplets_conv.f90 @@ -0,0 +1,103 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_DROPS_TO_DROPLETS_CONV +! ################################# +! +INTERFACE + SUBROUTINE LIMA_DROPS_TO_DROPLETS_CONV (PRHODREF, PRCT, PRRT, PCCT, PCRT, & + P_RR_CVRC, P_CR_CVRC ) +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCRT ! Rain water C. at t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_RR_CVRC +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_CR_CVRC +! +END SUBROUTINE LIMA_DROPS_TO_DROPLETS_CONV +END INTERFACE +END MODULE MODI_LIMA_DROPS_TO_DROPLETS_CONV +! +! ###################################################################### + SUBROUTINE LIMA_DROPS_TO_DROPLETS_CONV (PRHODREF, PRCT, PRRT, PCCT, PCRT, & + P_RR_CVRC, P_CR_CVRC ) +! ###################################################################### +! +!! PURPOSE +!! ------- +!! Conversion of rain drops into cloud droplets if mean volume diameter < 82µm +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XPI, XRHOLW +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN +USE MODD_PARAM_LIMA_WARM, ONLY : XLBR, XLBEXR, XLBC, XLBEXC, & + XACCR1, XACCR3, XACCR4, XACCR5 +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCRT ! Rain water C. at t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_RR_CVRC +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_CR_CVRC +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PRCT,1),SIZE(PRCT,2),SIZE(PRCT,3)) :: ZDR +! +LOGICAL, DIMENSION(SIZE(PRCT,1),SIZE(PRCT,2),SIZE(PRCT,3)) :: ZMASKR, ZMASKC +! +REAL :: ZFACT +! +! +! +!------------------------------------------------------------------------------- +! +P_RR_CVRC(:,:,:) = 0. +P_CR_CVRC(:,:,:) = 0. +! +ZDR(:,:,:) = 9999. +ZMASKR(:,:,:) = PRRT(:,:,:).GT.XRTMIN(3) .AND. PCRT(:,:,:).GT.XCTMIN(3) +ZMASKC(:,:,:) = PRCT(:,:,:).GT.XRTMIN(2) .AND. PCCT(:,:,:).GT.XCTMIN(2) +WHERE(ZMASKR(:,:,:)) + ZDR(:,:,:)=(6.*PRRT(:,:,:)/XPI/XRHOLW/PCRT(:,:,:))**0.33 +END WHERE +! +! Transfer all drops in droplets if out of cloud and Dr<82microns +! +WHERE( ZMASKR(:,:,:) .AND. .NOT.ZMASKC(:,:,:) .AND. ZDR(:,:,:).LT.82.E-6) + P_RR_CVRC(:,:,:) = -PRRT(:,:,:) + P_CR_CVRC(:,:,:) = -PCRT(:,:,:) +END WHERE +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_DROPS_TO_DROPLETS_CONV diff --git a/src/MNH/lima_graupel.f90 b/src/MNH/lima_graupel.f90 new file mode 100644 index 0000000000000000000000000000000000000000..c1d740a479a8580109eb100e5573d70171eef777 --- /dev/null +++ b/src/MNH/lima_graupel.f90 @@ -0,0 +1,567 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_GRAUPEL +! ################################# +! +INTERFACE + SUBROUTINE LIMA_GRAUPEL (PTSTEP, LDCOMPUTE, & + PRHODREF, PPRES, PT, PKA, PDV, PCJ, & + PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCRT, PCIT, & + PLBDC, PLBDR, PLBDS, PLBDG, & + PLVFACT, PLSFACT, & + P_TH_WETG, P_RC_WETG, P_CC_WETG, P_RR_WETG, P_CR_WETG, & + P_RI_WETG, P_CI_WETG, P_RS_WETG, P_RG_WETG, P_RH_WETG, & + P_TH_DRYG, P_RC_DRYG, P_CC_DRYG, P_RR_DRYG, P_CR_DRYG, & + P_RI_DRYG, P_CI_DRYG, P_RS_DRYG, P_RG_DRYG, & + P_RI_HMG, P_CI_HMG, P_RG_HMG, & + P_TH_GMLT, P_RR_GMLT, P_CR_GMLT, & + PA_TH, PA_RC, PA_CC, PA_RR, PA_CR, & + PA_RI, PA_CI, PA_RS, PA_RG, PA_RH ) +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! +REAL, DIMENSION(:), INTENT(IN) :: PPRES ! +REAL, DIMENSION(:), INTENT(IN) :: PT ! +REAL, DIMENSION(:), INTENT(IN) :: PKA ! +REAL, DIMENSION(:), INTENT(IN) :: PDV ! +REAL, DIMENSION(:), INTENT(IN) :: PCJ ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! +REAL, DIMENSION(:), INTENT(IN) :: PRST ! +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PLBDC ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDS ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDG ! +! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RH_WETG +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_DRYG +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_HMG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_HMG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_HMG +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_GMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_GMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_GMLT +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RH +! +END SUBROUTINE LIMA_GRAUPEL +END INTERFACE +END MODULE MODI_LIMA_GRAUPEL +! +! ################################################################################# + SUBROUTINE LIMA_GRAUPEL (PTSTEP, LDCOMPUTE, & + PRHODREF, PPRES, PT, PKA, PDV, PCJ, & + PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCRT, PCIT, & + PLBDC, PLBDR, PLBDS, PLBDG, & + PLVFACT, PLSFACT, & + P_TH_WETG, P_RC_WETG, P_CC_WETG, P_RR_WETG, P_CR_WETG, & + P_RI_WETG, P_CI_WETG, P_RS_WETG, P_RG_WETG, P_RH_WETG, & + P_TH_DRYG, P_RC_DRYG, P_CC_DRYG, P_RR_DRYG, P_CR_DRYG, & + P_RI_DRYG, P_CI_DRYG, P_RS_DRYG, P_RG_DRYG, & + P_RI_HMG, P_CI_HMG, P_RG_HMG, & + P_TH_GMLT, P_RR_GMLT, P_CR_GMLT, & + PA_TH, PA_RC, PA_CC, PA_RR, PA_CR, & + PA_RI, PA_CI, PA_RS, PA_RG, PA_RH ) +! ################################################################################# +! +!! PURPOSE +!! ------- +!! Compute the wet/dry growth of graupel, associated Hallett-Mossop ice production, +!! and graupel melting rates +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XTT, XMD, XMV, XRD, XRV, XLVTT, XLMTT, XESTT, XCL, XCI, XCPV +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCEXVT, LHAIL +USE MODD_PARAM_LIMA_MIXED, ONLY : XCXG, XDG, X0DEPG, X1DEPG, NGAMINC, & + XFCDRYG, XFIDRYG, XCOLIG, XCOLSG, XCOLEXIG, XCOLEXSG, & + XFSDRYG, XLBSDRYG1, XLBSDRYG2, XLBSDRYG3, XKER_SDRYG, & + XFRDRYG, XLBRDRYG1, XLBRDRYG2, XLBRDRYG3, XKER_RDRYG, & + XHMTMIN, XHMTMAX, XHMLINTP1, XHMLINTP2, XHM_FACTG, XGAMINC_HMC, & + XEX0DEPG, XEX1DEPG, & + XDRYINTP1R, XDRYINTP1S, XDRYINTP1G, & + XDRYINTP2R, XDRYINTP2S, XDRYINTP2G, & + NDRYLBDAR, NDRYLBDAS, NDRYLBDAG +USE MODD_PARAM_LIMA_COLD, ONLY : XMNU0, XCXS, XBS +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! +REAL, DIMENSION(:), INTENT(IN) :: PPRES ! +REAL, DIMENSION(:), INTENT(IN) :: PT ! +REAL, DIMENSION(:), INTENT(IN) :: PKA ! +REAL, DIMENSION(:), INTENT(IN) :: PDV ! +REAL, DIMENSION(:), INTENT(IN) :: PCJ ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! +REAL, DIMENSION(:), INTENT(IN) :: PRST ! +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PLBDC ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDS ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDG ! +! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RH_WETG +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_DRYG +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_HMG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_HMG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_HMG +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_GMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_GMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_GMLT +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RH +! +!* 0.2 Declarations of local variables : +! +LOGICAL, DIMENSION(SIZE(PRCT)) :: GDRY +INTEGER :: IGDRY +INTEGER :: JJ +! +REAL, DIMENSION(SIZE(PRCT)) :: Z1, Z2, Z3, Z4 +REAL, DIMENSION(SIZE(PRCT)) :: ZZX, ZZW, ZZW1, ZZW2, ZZW3, ZZW4, ZZW5, ZZW6, ZZW7 +REAL, DIMENSION(SIZE(PRCT)) :: ZRDRYG, ZRWETG +! +INTEGER, DIMENSION(SIZE(PRCT)) :: IVEC1,IVEC2 ! Vectors of indices +REAL, DIMENSION(SIZE(PRCT)) :: ZVEC1,ZVEC2, ZVEC3 ! Work vectors +! +INTEGER :: NHAIL +! +!------------------------------------------------------------------------------- +! +! +P_RC_WETG(:) = 0. +P_CC_WETG(:) = 0. +P_RR_WETG(:) = 0. +P_CR_WETG(:) = 0. +P_RI_WETG(:) = 0. +P_CI_WETG(:) = 0. +P_RS_WETG(:) = 0. +P_RG_WETG(:) = 0. +P_RH_WETG(:) = 0. +! +P_RC_DRYG(:) = 0. +P_CC_DRYG(:) = 0. +P_RR_DRYG(:) = 0. +P_CR_DRYG(:) = 0. +P_RI_DRYG(:) = 0. +P_CI_DRYG(:) = 0. +P_RS_DRYG(:) = 0. +P_RG_DRYG(:) = 0. +! +P_RI_HMG(:) = 0. +P_CI_HMG(:) = 0. +P_RG_HMG(:) = 0. +! +P_RR_GMLT(:) = 0. +P_CR_GMLT(:) = 0. +! +ZZW1(:) = 0. ! RCDRYG +ZZW2(:) = 0. ! RIDRYG +ZZW3(:) = 0. ! RSDRYG +ZZW4(:) = 0. ! RRDRYG +ZZW5(:) = 0. ! RIWETG +ZZW6(:) = 0. ! RSWETG +ZZW7(:) = 0. ! +! +ZRDRYG(:) = 0. +ZRWETG(:) = 0. +! +! +!* 1. Graupel growth by collection (dry or wet case) +! -------------------------------------------------- +! +! 1.a Collection of rc and ri in the dry mode +! -------------------------------------------- +! +WHERE( PRGT(:)>XRTMIN(6) .AND. LDCOMPUTE(:) ) + ZZW(:) = PLBDG(:)**(XCXG-XDG-2.0) * PRHODREF(:)**(-XCEXVT) + ZZW1(:) = XFCDRYG * PRCT(:) * ZZW(:) ! RCDRYG - rc collected by graupel in dry mode + ZZW2(:) = XFIDRYG * EXP( XCOLEXIG*(PT(:)-XTT) ) * PRIT(:) * ZZW(:) ! RIDRYG - ri collected by graupel in dry mode +END WHERE +! +!* 1.b Collection of rs in the dry mode +! ------------------------------------ +! +GDRY(:) = (PRST(:)>XRTMIN(5)) .AND. (PRGT(:)>XRTMIN(6)) .AND. LDCOMPUTE(:) +! +WHERE( GDRY ) +! +!* Select the (ZLBDAG,ZLBDAS) couplet +! + ZVEC1(:) = PLBDG(:) + ZVEC2(:) = PLBDS(:) +! +!* find the next lower indice for the ZLBDAG and for the ZLBDAS +! in the geometrical set of (Lbda_g,Lbda_s) couplet use to +! tabulate the SDRYG-kernel +! + ZVEC1(:) = MAX( 1.0001, MIN( FLOAT(NDRYLBDAG)-0.0001, & + XDRYINTP1G * LOG( ZVEC1(:) ) + XDRYINTP2G ) ) + IVEC1(:) = INT( ZVEC1(:) ) + ZVEC1(:) = ZVEC1(:) - FLOAT( IVEC1(:) ) +! + ZVEC2(:) = MAX( 1.0001, MIN( FLOAT(NDRYLBDAS)-0.0001, & + XDRYINTP1S * LOG( ZVEC2(:) ) + XDRYINTP2S ) ) + IVEC2(:) = INT( ZVEC2(:) ) + ZVEC2(:) = ZVEC2(:) - FLOAT( IVEC2(:) ) +! +!* perform the bilinear interpolation of the normalized +! SDRYG-kernel + ! + Z1(:) = GET_XKER_SDRYG(IVEC1(:)+1,IVEC2(:)+1) + Z2(:) = GET_XKER_SDRYG(IVEC1(:)+1,IVEC2(:) ) + Z3(:) = GET_XKER_SDRYG(IVEC1(:) ,IVEC2(:)+1) + Z4(:) = GET_XKER_SDRYG(IVEC1(:) ,IVEC2(:) ) + ZVEC3(:) = ( Z1(:)* ZVEC2(:) & + - Z2(:)*(ZVEC2(:) - 1.0) ) & + * ZVEC1(:) & + - ( Z3(:)* ZVEC2(:) & + - Z4(:)*(ZVEC2(:) - 1.0) ) & + * (ZVEC1(:) - 1.0) + ZZW(:) = ZVEC3(:) +! + ZZW3(:) = XFSDRYG * ZZW(:) * EXP( XCOLEXSG*(PT(:)-XTT) ) & ! RSDRYG - rs collected by graupel in dry mode + *( PLBDS(:)**(XCXS-XBS) )*( PLBDG(:)**XCXG ) & + *( PRHODREF(:)**(-XCEXVT-1.) ) & + *( XLBSDRYG1/( PLBDG(:)**2 ) + & + XLBSDRYG2/( PLBDG(:) * PLBDS(:) ) + & + XLBSDRYG3/( PLBDS(:)**2) ) +END WHERE +! +!* 1.c Collection of rr in the dry mode +! ------------------------------------- +! +GDRY(:) = (PRRT(:)>XRTMIN(3)) .AND. (PRGT(:)>XRTMIN(6)) .AND. LDCOMPUTE(:) +! +WHERE( GDRY ) +! +!* Select the (ZLBDAG,ZLBDAR) couplet +! + ZVEC1(:) = PLBDG(:) + ZVEC2(:) = PLBDR(:) +! +!* Find the next lower indice for the ZLBDAG and for the ZLBDAR +! in the geometrical set of (Lbda_g,Lbda_r) couplet use to +! tabulate the RDRYG-kernel +! + ZVEC1(:) = MAX( 1.0001, MIN( FLOAT(NDRYLBDAG)-0.0001, & + XDRYINTP1G * LOG( ZVEC1(:) ) + XDRYINTP2G ) ) + IVEC1(:) = INT( ZVEC1(:) ) + ZVEC1(:) = ZVEC1(:) - FLOAT( IVEC1(:) ) +! + ZVEC2(:) = MAX( 1.0001, MIN( FLOAT(NDRYLBDAR)-0.0001, & + XDRYINTP1R * LOG( ZVEC2(:) ) + XDRYINTP2R ) ) + IVEC2(:) = INT( ZVEC2(:) ) + ZVEC2(:) = ZVEC2(:) - FLOAT( IVEC2(:) ) +! +!* Perform the bilinear interpolation of the normalized +! RDRYG-kernel +! + Z1(:) = GET_XKER_RDRYG(IVEC1(:)+1,IVEC2(:)+1) + Z2(:) = GET_XKER_RDRYG(IVEC1(:)+1,IVEC2(:) ) + Z3(:) = GET_XKER_RDRYG(IVEC1(:) ,IVEC2(:)+1) + Z4(:) = GET_XKER_RDRYG(IVEC1(:) ,IVEC2(:) ) + ZVEC3(:) = ( Z1(:)* ZVEC2(:) & + - Z2(:)*(ZVEC2(:) - 1.0) ) & + * ZVEC1(:) & + - ( Z3(:)* ZVEC2(:) & + - Z4(:)*(ZVEC2(:) - 1.0) ) & + * (ZVEC1(:) - 1.0) + ZZW(:) = ZVEC3(:) +! +! BVIE manque PCRT ??????????????????????????????????? +! ZZW4(:) = XFRDRYG * ZZW(:) & ! RRDRYG + ZZW4(:) = XFRDRYG * ZZW(:) * PCRT(:) & ! RRDRYG + *( PLBDG(:)**XCXG ) * ( PRHODREF(:)**(-XCEXVT-1.) ) & + *( XLBRDRYG1/( PLBDG(:)**2 ) + & + XLBRDRYG2/( PLBDG(:) * PLBDR(:) ) + & + XLBRDRYG3/( PLBDR(:)**2) ) / PLBDR(:)**3 +END WHERE +! +! 1.d Total collection in the dry mode +! ------------------------------------ +! +ZRDRYG(:) = ZZW1(:) + ZZW2(:) + ZZW3(:) + ZZW4(:) +! +! 1.e Collection in the wet mode +! ------------------------------ +! +ZZW(:) = 0.0 +WHERE( PRGT(:)>XRTMIN(6) .AND. LDCOMPUTE(:) ) + ZZW5(:) = ZZW2(:) / (XCOLIG*EXP(XCOLEXIG*(PT(:)-XTT)) ) ! RIWETG + ZZW6(:) = ZZW3(:) / (XCOLSG*EXP(XCOLEXSG*(PT(:)-XTT)) ) ! RSWETG +! + ZZW(:) = PRVT(:)*PPRES(:)/((XMV/XMD)+PRVT(:)) ! Vapor pressure + ZZW(:) = PKA(:)*(XTT-PT(:)) + & + ( PDV(:)*(XLVTT + ( XCPV - XCL ) * ( PT(:) - XTT )) & + *(XESTT-ZZW(:))/(XRV*PT(:)) ) +! +! Total mass gained by graupel in wet mode + ZRWETG(:) = MAX( 0.0, & + ( ZZW(:) * ( X0DEPG* PLBDG(:)**XEX0DEPG + & + X1DEPG*PCJ(:)*PLBDG(:)**XEX1DEPG ) + & + ( ZZW5(:)+ZZW6(:) ) * & + ( PRHODREF(:)*(XLMTT+(XCI-XCL)*(XTT-PT(:))) ) ) / & + ( PRHODREF(:)*(XLMTT-XCL*(XTT-PT(:))) ) ) +END WHERE +! +! 1.f Wet mode and partial conversion to hail +! ------------------------------------------- +! +ZZW(:) = 0.0 +NHAIL = 0. +IF (LHAIL) NHAIL = 1. +WHERE( LDCOMPUTE(:) .AND. PRGT(:)>XRTMIN(6) .AND. PT(:)<XTT & + .AND. ZRDRYG(:)>=ZRWETG(:) .AND. ZRWETG(:)>0.0 ) +! +! Mass of rain and cloud droplets frozen by graupel in wet mode : RCWETG + RRWETG = RWETG - RIWETG - RSWETG + ZZW7(:) = ZRWETG(:) - ZZW5(:) - ZZW6(:) +! +! assume a linear percent of conversion of graupel into hail +! ZZW = percentage of graupel transformed +! + ZZW(:) = ZRDRYG(:)*NHAIL/(ZRWETG(:)+ZRDRYG(:)) +! + P_RC_WETG(:) = - ZZW1(:) + P_CC_WETG(:) = P_RC_WETG(:) * PCCT(:)/MAX(PRCT(:),XRTMIN(2)) + P_RR_WETG(:) = - ZZW7(:) + ZZW1(:) + P_CR_WETG(:) = P_RR_WETG(:) * PCRT(:)/MAX(PRRT(:),XRTMIN(3)) + P_RI_WETG(:) = - ZZW5(:) + P_CI_WETG(:) = P_RI_WETG(:) * PCIT(:)/MAX(PRIT(:),XRTMIN(4)) + P_RS_WETG(:) = - ZZW6(:) + P_RG_WETG(:) = - PRGT(:)/PTSTEP * ZZW(:) + ZRWETG(:) * (1.-ZZW(:)) + P_RH_WETG(:) = PRGT(:)/PTSTEP * ZZW(:) + ZRWETG(:) * ZZW(:) + ! + P_TH_WETG(:) = ZZW7(:) * (PLSFACT(:)-PLVFACT(:)) +END WHERE +! +! 1.g Dry mode +! ------------ +! +WHERE( LDCOMPUTE(:) .AND. PRGT(:)>XRTMIN(6) .AND. PT(:)<XTT & + .AND. ZRDRYG(:)<ZRWETG(:) .AND. ZRDRYG(:)>0.0 ) + ! + P_RC_DRYG(:) = - ZZW1(:) + P_CC_DRYG(:) = P_RC_DRYG(:) * PCCT(:)/MAX(PRCT(:),XRTMIN(2)) + P_RR_DRYG(:) = - ZZW4(:) + P_CR_DRYG(:) = P_RR_DRYG(:) * PCRT(:)/MAX(PRRT(:),XRTMIN(3)) + P_RI_DRYG(:) = - ZZW2(:) + P_CI_DRYG(:) = P_RI_DRYG(:) * PCIT(:)/MAX(PRIT(:),XRTMIN(4)) + P_RS_DRYG(:) = - ZZW3(:) + P_RG_DRYG(:) = ZRDRYG(:) + ! + P_TH_DRYG(:) = (ZZW1(:) + ZZW4(:)) * (PLSFACT(:)-PLVFACT(:)) +END WHERE +! +! +!* 2. Hallett-Mossop process (HMG) +! -------------------------------- +! +! BVIE test ZRDRYG<ZZW ????????????????????????? +!GDRY(:) = (PT(:)<XHMTMAX) .AND. (PT(:)>XHMTMIN) .AND. (ZRDRYG(:)<ZZW(:))& +GDRY(:) = (PT(:)<XHMTMAX) .AND. (PT(:)>XHMTMIN) .AND. (ZRDRYG(:)<ZRWETG(:))& + .AND. (PRGT(:)>XRTMIN(6)) .AND. (PRCT(:)>XRTMIN(2)) .AND. LDCOMPUTE(:) + +ZZX(:)=9999. +ZVEC1(:)=0. +ZVEC2(:)=0. +IVEC1(:)=0 +IVEC2(:)=0 +WHERE( GDRY(:) ) +! + ZVEC1(:) = PLBDC(:) + ZVEC2(:) = MAX( 1.0001, MIN( FLOAT(NGAMINC)-0.0001, & + XHMLINTP1 * LOG( ZVEC1(:) ) + XHMLINTP2 ) ) + IVEC2(:) = INT( ZVEC2(:) ) + ZVEC2(:) = ZVEC2(:) - FLOAT( IVEC2(:) ) + ZVEC1(:) = XGAMINC_HMC( IVEC2(:)+1 )* ZVEC2(:) & + - XGAMINC_HMC( IVEC2(:) )*(ZVEC2(:) - 1.0) + ZZX(:) = ZVEC1(:) ! Large droplets +! + WHERE ( ZZX(:)<0.99 ) ! Dry case + P_CI_HMG(:) = ZZW1(:)*(PCCT(:)/PRCT(:))*(1.0-ZZX(:))*XHM_FACTG* & + MAX( 0.0, MIN( (PT(:)-XHMTMIN)/3.0,(XHMTMAX-PT(:))/2.0 ) ) + P_RI_HMG(:) = P_CI_HMG(:) * XMNU0 + P_RG_HMG(:) = - P_RI_HMG(:) + END WHERE +END WHERE +! +! +!* 3. Graupel Melting +! ------------------- +! +ZZX(:) = 0.0 +WHERE( (PRGT(:)>XRTMIN(6)) .AND. (PT(:)>XTT) .AND. LDCOMPUTE(:) ) + ZZX(:) = PRVT(:)*PPRES(:)/((XMV/XMD)+PRVT(:)) ! Vapor pressure + ZZX(:) = PKA(:)*(XTT-PT(:)) + & + ( PDV(:)*(XLVTT + ( XCPV - XCL ) * ( PT(:) - XTT )) & + *(XESTT-ZZX(:))/(XRV*PT(:)) ) +! +! compute RGMLTR +! + ZZX(:) = MAX( 0.0,( -ZZX(:) * & + ( X0DEPG* PLBDG(:)**XEX0DEPG + & + X1DEPG*PCJ(:)*PLBDG(:)**XEX1DEPG ) - & + ( ZZW1(:)+ZZW4(:) ) * & + ( PRHODREF(:)*XCL*(XTT-PT(:))) ) / & + ( PRHODREF(:)*XLMTT ) ) + P_RR_GMLT(:) = ZZX(:) + P_CR_GMLT(:) = ZZX(:) * 5.0E6 ! obtained after averaging, Dshed=1mm and 500 microns + ! + P_TH_GMLT(:) = - P_RR_GMLT(:) * (PLSFACT(:)-PLVFACT(:)) +END WHERE +! +! +! +! +PA_RC(:) = PA_RC(:) + P_RC_WETG(:) + P_RC_DRYG(:) +PA_CC(:) = PA_CC(:) + P_CC_WETG(:) + P_CC_DRYG(:) +PA_RR(:) = PA_RR(:) + P_RR_WETG(:) + P_RR_DRYG(:) + P_RR_GMLT(:) +PA_CR(:) = PA_CR(:) + P_CR_WETG(:) + P_CR_DRYG(:) + P_CR_GMLT(:) +PA_RI(:) = PA_RI(:) + P_RI_WETG(:) + P_RI_DRYG(:) + P_RI_HMG(:) +PA_CI(:) = PA_CI(:) + P_CI_WETG(:) + P_CI_DRYG(:) + P_CI_HMG(:) +PA_RS(:) = PA_RS(:) + P_RS_WETG(:) + P_RS_DRYG(:) +PA_RG(:) = PA_RG(:) + P_RG_WETG(:) + P_RG_DRYG(:) + P_RG_HMG(:) - P_RR_GMLT(:) +PA_RH(:) = PA_RH(:) + P_RH_WETG(:) +PA_TH(:) = PA_TH(:) + P_TH_WETG(:) + P_TH_DRYG(:) + P_TH_GMLT(:) +! +!------------------------------------------------------------------------------- +! +CONTAINS + FUNCTION GET_XKER_SDRYG(GRAUPEL,SNOW) RESULT(RET) + INTEGER, DIMENSION(:) :: GRAUPEL + INTEGER, DIMENSION(:) :: SNOW + REAL, DIMENSION(SIZE(SNOW)) :: RET + ! + INTEGER I + ! + DO I=1,SIZE(GRAUPEL) + RET(I) = XKER_SDRYG(MAX(MIN(GRAUPEL(I),SIZE(XKER_SDRYG,1)),1),MAX(MIN(SNOW(I),SIZE(XKER_SDRYG,2)),1)) + END DO + END FUNCTION GET_XKER_SDRYG +! +!------------------------------------------------------------------------------- +! + FUNCTION GET_XKER_RDRYG(GRAUPEL,RAIN) RESULT(RET) + INTEGER, DIMENSION(:) :: GRAUPEL + INTEGER, DIMENSION(:) :: RAIN + REAL, DIMENSION(SIZE(RAIN)) :: RET + ! + INTEGER I + ! + DO I=1,SIZE(GRAUPEL) + RET(I) = XKER_RDRYG(MAX(MIN(GRAUPEL(I),SIZE(XKER_RDRYG,1)),1),MAX(MIN(RAIN(I),SIZE(XKER_RDRYG,2)),1)) + END DO + END FUNCTION GET_XKER_RDRYG +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_GRAUPEL diff --git a/src/MNH/lima_graupel_deposition.f90 b/src/MNH/lima_graupel_deposition.f90 new file mode 100644 index 0000000000000000000000000000000000000000..85fbbe915979039948a1753c357b65a7256ae2ad --- /dev/null +++ b/src/MNH/lima_graupel_deposition.f90 @@ -0,0 +1,108 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_GRAUPEL_DEPOSITION +! ################################# +! +INTERFACE + SUBROUTINE LIMA_GRAUPEL_DEPOSITION (LDCOMPUTE, & + PRGT, PSSI, PLBDG, PAI, PCJ, PLSFACT, & + P_TH_DEPG, P_RG_DEPG, & + PA_TH, PA_RV, PA_RG ) +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PSSI ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDG ! +REAL, DIMENSION(:), INTENT(IN) :: PAI ! +REAL, DIMENSION(:), INTENT(IN) :: PCJ ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DEPG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_DEPG +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RV +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +!! +END SUBROUTINE LIMA_GRAUPEL_DEPOSITION +END INTERFACE +END MODULE MODI_LIMA_GRAUPEL_DEPOSITION +! +! ########################################################################### + SUBROUTINE LIMA_GRAUPEL_DEPOSITION (LDCOMPUTE, & + PRGT, PSSI, PLBDG, PAI, PCJ, PLSFACT, & + P_TH_DEPG, P_RG_DEPG, & + PA_TH, PA_RV, PA_RG ) +! ########################################################################### +! +!! PURPOSE +!! ------- +!! Deposition of water vapour on graupel +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAM_LIMA, ONLY : XRTMIN +USE MODD_PARAM_LIMA_MIXED, ONLY : X0DEPG, XEX0DEPG, X1DEPG, XEX1DEPG +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PSSI ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDG ! +REAL, DIMENSION(:), INTENT(IN) :: PAI ! +REAL, DIMENSION(:), INTENT(IN) :: PCJ ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DEPG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_DEPG +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RV +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +! +! +!------------------------------------------------------------------------------- +! +! +!* 1. Deposition of vapour on graupel +! ------------------------------- +! +P_TH_DEPG(:) = 0.0 +P_RG_DEPG(:) = 0.0 +WHERE ( (PRGT(:)>XRTMIN(6)) .AND. LDCOMPUTE(:) ) + P_RG_DEPG(:) = ( PSSI(:)/(PAI(:)) ) * & + ( X0DEPG*PLBDG(:)**XEX0DEPG + X1DEPG*PCJ(:)*PLBDG(:)**XEX1DEPG ) + P_TH_DEPG(:) = P_RG_DEPG(:)*PLSFACT(:) +END WHERE +! +PA_RV(:) = PA_RV(:) - P_RG_DEPG(:) +PA_RG(:) = PA_RG(:) + P_RG_DEPG(:) +PA_TH(:) = PA_TH(:) + P_TH_DEPG(:) +! +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_GRAUPEL_DEPOSITION diff --git a/src/MNH/lima_ice_aggregation_snow.f90 b/src/MNH/lima_ice_aggregation_snow.f90 new file mode 100644 index 0000000000000000000000000000000000000000..15c1d699c24833c3513b7a5a75ff747994254085 --- /dev/null +++ b/src/MNH/lima_ice_aggregation_snow.f90 @@ -0,0 +1,130 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_ICE_AGGREGATION_SNOW +! ################################# +! +INTERFACE + SUBROUTINE LIMA_ICE_AGGREGATION_SNOW (LDCOMPUTE, & + PT, & + PRIT, PRST, PCIT, PLBDI, PLBDS, & + P_RI_AGGS, P_CI_AGGS, & + PA_RI, PA_CI, PA_RS ) +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PT +! +REAL, DIMENSION(:), INTENT(IN) :: PRIT +REAL, DIMENSION(:), INTENT(IN) :: PRST +REAL, DIMENSION(:), INTENT(IN) :: PCIT +REAL, DIMENSION(:), INTENT(IN) :: PLBDI +REAL, DIMENSION(:), INTENT(IN) :: PLBDS +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_AGGS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_AGGS +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +! +END SUBROUTINE LIMA_ICE_AGGREGATION_SNOW +END INTERFACE +END MODULE MODI_LIMA_ICE_AGGREGATION_SNOW +! +! ####################################################################### + SUBROUTINE LIMA_ICE_AGGREGATION_SNOW (LDCOMPUTE, & + PT, & + PRIT, PRST, PCIT, PLBDI, PLBDS, & + P_RI_AGGS, P_CI_AGGS, & + PA_RI, PA_CI, PA_RS ) +! ####################################################################### +! +!! PURPOSE +!! ------- +!! Compute the aggregation of pristine ice on snow/aggregates +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XTT +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN +USE MODD_PARAM_LIMA_COLD, ONLY : XBI, XCCS, XCXS, XCOLEXIS, XAGGS_CLARGE1, XAGGS_CLARGE2, & + XAGGS_RLARGE1, XAGGS_RLARGE2 +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PT +! +REAL, DIMENSION(:), INTENT(IN) :: PRIT +REAL, DIMENSION(:), INTENT(IN) :: PRST +REAL, DIMENSION(:), INTENT(IN) :: PCIT +REAL, DIMENSION(:), INTENT(IN) :: PLBDI +REAL, DIMENSION(:), INTENT(IN) :: PLBDS +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_AGGS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_AGGS +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PRIT)) :: ZZW1, ZZW2, ZZW3 ! work arrays +! +!------------------------------------------------------------------------------- +! +! +!* 2.4 Aggregation of r_i on r_s: CIAGGS and RIAGGS +! --------------------------------------------------- +! +ZZW1(:) = 0. +ZZW2(:) = 0. +ZZW3(:) = 0. +! +P_RI_AGGS(:) = 0. +P_CI_AGGS(:) = 0. +! +! +WHERE ( (PRIT(:)>XRTMIN(4)) .AND. (PRST(:)>XRTMIN(5)) .AND. LDCOMPUTE(:) ) + ZZW1(:) = (PLBDI(:) / PLBDS(:))**3 + ZZW2(:) = (PCIT(:)*(XCCS*PLBDS(:)**XCXS)*EXP( XCOLEXIS*(PT(:)-XTT) )) & + / (PLBDI(:)**3) + ZZW3(:) = ZZW2(:)*(XAGGS_CLARGE1+XAGGS_CLARGE2*ZZW1(:)) +! + P_CI_AGGS(:) = - ZZW3(:) +! + ZZW2(:) = ZZW2(:) / PLBDI(:)**XBI + ZZW2(:) = ZZW2(:)*(XAGGS_RLARGE1+XAGGS_RLARGE2*ZZW1(:)) +! + P_RI_AGGS(:) = - ZZW2(:) +END WHERE +! +! +PA_RI(:) = PA_RI(:) + P_RI_AGGS(:) +PA_CI(:) = PA_CI(:) + P_CI_AGGS(:) +PA_RS(:) = PA_RS(:) - P_RI_AGGS(:) +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_ICE_AGGREGATION_SNOW diff --git a/src/MNH/lima_ice_melting.f90 b/src/MNH/lima_ice_melting.f90 new file mode 100644 index 0000000000000000000000000000000000000000..a95f45044056fda9664059a03b549d2395581639 --- /dev/null +++ b/src/MNH/lima_ice_melting.f90 @@ -0,0 +1,164 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_ICE_MELTING +! ################################# +! +INTERFACE + SUBROUTINE LIMA_ICE_MELTING (PTSTEP, LDCOMPUTE, & + PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCIT, PINT, & + P_TH_IMLT, P_RC_IMLT, P_CC_IMLT, & + PB_TH, PB_RC, PB_CC, PB_RI, PB_CI, PB_IFNN) +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:), INTENT(IN) :: PPABST ! abs. pressure at time t +! +REAL, DIMENSION(:), INTENT(IN) :: PTHT ! Theta at time t +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRST ! +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! Rain water C. at t +REAL, DIMENSION(:,:), INTENT(IN) :: PINT ! Nucleated IFN C. at t +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_IMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_IMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_IMLT +REAL, DIMENSION(:), INTENT(INOUT) :: PB_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PB_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PB_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PB_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PB_CI +REAL, DIMENSION(:,:), INTENT(INOUT) :: PB_IFNN +! +END SUBROUTINE LIMA_ICE_MELTING +END INTERFACE +END MODULE MODI_LIMA_ICE_MELTING +! +! ######################################################################## + SUBROUTINE LIMA_ICE_MELTING (PTSTEP, LDCOMPUTE, & + PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCIT, PINT, & + P_TH_IMLT, P_RC_IMLT, P_CC_IMLT, & + PB_TH, PB_RC, PB_CC, PB_RI, PB_CI, PB_IFNN) +! ######################################################################## +! +!! PURPOSE +!! ------- +!! Melting of pristine ice crystals +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XP00, XRD, XCPD, XCPV, XCL, XCI, XTT, XLSTT, XLVTT +USE MODD_PARAM_LIMA, ONLY : XRTMIN, NMOD_IFN +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:), INTENT(IN) :: PPABST ! abs. pressure at time t +! +REAL, DIMENSION(:), INTENT(IN) :: PTHT ! Theta at time t +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRST ! +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! Rain water C. at t +REAL, DIMENSION(:,:), INTENT(IN) :: PINT ! Nucleated IFN C. at t +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_IMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_IMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_IMLT +REAL, DIMENSION(:), INTENT(INOUT) :: PB_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PB_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PB_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PB_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PB_CI +REAL, DIMENSION(:,:), INTENT(INOUT) :: PB_IFNN +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PTHT)) :: & + ZW, & + ZT, & + ZTCELSIUS,& + ZLSFACT, & + ZLVFACT, & + ZMASK +! +INTEGER :: JMOD_IFN +! +! +! +!------------------------------------------------------------------------------- +! +P_TH_IMLT(:) = 0. +P_RC_IMLT(:) = 0. +P_CC_IMLT(:) = 0. +! +! Temperature +ZT(:) = PTHT(:) * ( PPABST(:)/XP00 ) ** (XRD/XCPD) +ZTCELSIUS(:) = ZT(:)-XTT +! +ZW(:) = PEXNREF(:)*( XCPD+XCPV*PRVT(:)+XCL*(PRCT(:)+PRRT(:)) & + +XCI*(PRIT(:)+PRST(:)+PRGT(:)) ) +ZLSFACT(:) = (XLSTT+(XCPV-XCI)*ZTCELSIUS(:))/ZW(:) ! L_s/(Pi_ref*C_ph) +ZLVFACT(:) = (XLVTT+(XCPV-XCL)*ZTCELSIUS(:))/ZW(:) ! L_v/(Pi_ref*C_ph) +! +ZW(:) = 0.0 +! +ZMASK(:) = 0. +! +WHERE( (ZT(:)>XTT) .AND. (PRIT(:)>XRTMIN(4)) .AND. LDCOMPUTE(:) ) + P_TH_IMLT(:) = - PRIT(:)*(ZLSFACT(:)-ZLVFACT(:)) + P_RC_IMLT(:) = PRIT(:) + P_CC_IMLT(:) = PCIT(:) + PB_TH(:) = PB_TH(:) + P_TH_IMLT(:) + PB_RC(:) = PB_RC(:) + PRIT(:) + PB_CC(:) = PB_CC(:) + PCIT(:) + PB_RI(:) = PB_RI(:) - PRIT(:) + PB_CI(:) = PB_CI(:) - PCIT(:) + ZMASK(:) = 1. +ENDWHERE +! +DO JMOD_IFN = 1,NMOD_IFN + PB_IFNN(:,JMOD_IFN) = PB_IFNN(:,JMOD_IFN) - PINT(:,JMOD_IFN)* ZMASK(:) +ENDDO +! +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_ICE_MELTING diff --git a/src/MNH/lima_ice_snow_deposition.f90 b/src/MNH/lima_ice_snow_deposition.f90 new file mode 100644 index 0000000000000000000000000000000000000000..7563412ba348469c1628a7849be592cb01f1e351 --- /dev/null +++ b/src/MNH/lima_ice_snow_deposition.f90 @@ -0,0 +1,230 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ##################### + MODULE MODI_LIMA_ICE_SNOW_DEPOSITION +! ##################### +! +INTERFACE + SUBROUTINE LIMA_ICE_SNOW_DEPOSITION (PTSTEP, LDCOMPUTE, & + PRHODREF, PSSI, PAI, PCJ, PLSFACT, & + PRIT, PRST, PCIT, PLBDI, PLBDS, & + P_RI_CNVI, P_CI_CNVI, & + P_TH_DEPS, P_RS_DEPS, & + P_RI_CNVS, P_CI_CNVS, & + PA_TH, PA_RV, PA_RI, PA_CI, PA_RS ) +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF! Reference density +REAL, DIMENSION(:), INTENT(IN) :: PSSI ! abs. pressure at time t +REAL, DIMENSION(:), INTENT(IN) :: PAI ! abs. pressure at time t +REAL, DIMENSION(:), INTENT(IN) :: PCJ ! abs. pressure at time t +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! abs. pressure at time t +! +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRST ! Snow/aggregate m.r. at t +! +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! Ice crystal C. at t +! +REAL, DIMENSION(:), INTENT(IN) :: PLBDI ! Graupel m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDS ! Graupel m.r. at t +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CNVI +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CNVI +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DEPS +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_DEPS +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CNVS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CNVS +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RV +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +! +END SUBROUTINE LIMA_ICE_SNOW_DEPOSITION +END INTERFACE +END MODULE MODI_LIMA_ICE_SNOW_DEPOSITION +! +! ########################################################################## +SUBROUTINE LIMA_ICE_SNOW_DEPOSITION (PTSTEP, LDCOMPUTE, & + PRHODREF, PSSI, PAI, PCJ, PLSFACT, & + PRIT, PRST, PCIT, PLBDI, PLBDS, & + P_RI_CNVI, P_CI_CNVI, & + P_TH_DEPS, P_RS_DEPS, & + P_RI_CNVS, P_CI_CNVS, & + PA_TH, PA_RV, PA_RI, PA_CI, PA_RS ) +! ########################################################################## +! +!! PURPOSE +!! ------- +!! The purpose of this routine is to compute the microphysical sources +!! for slow cold processes : +!! - conversion of snow to ice +!! - deposition of vapor on snow +!! - conversion of ice to snow (Harrington 1995) +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN, XALPHAI, XALPHAS, XNUI, XNUS +USE MODD_PARAM_LIMA_COLD, ONLY : XCXS, XCCS, & + XLBDAS_MAX, XDSCNVI_LIM, XLBDASCNVI_MAX, & + XC0DEPSI, XC1DEPSI, XR0DEPSI, XR1DEPSI, & + XSCFAC, X1DEPS, X0DEPS, XEX1DEPS, XEX0DEPS, & + XDICNVS_LIM, XLBDAICNVS_LIM, & + XC0DEPIS, XC1DEPIS, XR0DEPIS, XR1DEPIS, & + XCOLEXIS, XAGGS_CLARGE1, XAGGS_CLARGE2, & + XAGGS_RLARGE1, XAGGS_RLARGE2 + +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF! Reference density +REAL, DIMENSION(:), INTENT(IN) :: PSSI ! abs. pressure at time t +REAL, DIMENSION(:), INTENT(IN) :: PAI ! abs. pressure at time t +REAL, DIMENSION(:), INTENT(IN) :: PCJ ! abs. pressure at time t +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! abs. pressure at time t +! +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRST ! Snow/aggregate m.r. at t +! +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! Ice crystal C. at t +! +REAL, DIMENSION(:), INTENT(IN) :: PLBDI ! Graupel m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDS ! Graupel m.r. at t +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CNVI +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CNVI +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DEPS +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_DEPS +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CNVS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CNVS +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RV +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +! +!* 0.2 Declarations of local variables : +! +LOGICAL, DIMENSION(SIZE(PRHODREF)) :: GMICRO ! Computations only where necessary +REAL, DIMENSION(SIZE(PRHODREF)) :: ZZW, ZZW2, ZZX ! Work array +! +! +!------------------------------------------------------------------------------- +! +P_RI_CNVI(:) = 0. +P_CI_CNVI(:) = 0. +P_TH_DEPS(:) = 0. +P_RS_DEPS(:) = 0. +P_RI_CNVS(:) = 0. +P_CI_CNVS(:) = 0. +! +! Physical limitations +! +! +! Looking for regions where computations are necessary +! +GMICRO(:) = .FALSE. +GMICRO(:) = LDCOMPUTE(:) .AND. & + (PRIT(:)>XRTMIN(4) .OR. & + PRST(:)>XRTMIN(5)) +! +! +WHERE( GMICRO ) +! +!* 2.1 Conversion of snow to r_i: RSCNVI +! ---------------------------------------- +! +! + ZZW2(:) = 0.0 + ZZW(:) = 0.0 + WHERE ( PLBDS(:)<XLBDASCNVI_MAX .AND. (PRST(:)>XRTMIN(5)) & + .AND. (PSSI(:)<0.0) ) + ZZW(:) = (PLBDS(:)*XDSCNVI_LIM)**(XALPHAS) + ZZX(:) = ( -PSSI(:)/PAI(:) ) * (XCCS*PLBDS(:)**XCXS) * (ZZW(:)**XNUS) * EXP(-ZZW(:)) +! + ZZW(:) = ( XR0DEPSI+XR1DEPSI*PCJ(:) )*ZZX(:) +! + ZZW2(:) = ZZW(:)*( XC0DEPSI+XC1DEPSI*PCJ(:) )/( XR0DEPSI+XR1DEPSI*PCJ(:) ) + END WHERE +! + P_RI_CNVI(:) = ZZW(:) + P_CI_CNVI(:) = ZZW2(:) +! + PA_RI(:) = PA_RI(:) + P_RI_CNVI(:) + PA_CI(:) = PA_CI(:) + P_CI_CNVI(:) + PA_RS(:) = PA_RS(:) - P_RI_CNVI(:) +! +! +!* 2.2 Deposition of water vapor on r_s: RVDEPS +! ----------------------------------------------- +! +! + ZZW(:) = 0.0 + WHERE ( (PRST(:)>XRTMIN(5)) ) + ZZW(:) = ( PSSI(:)/(PAI(:)) ) * & + ( X0DEPS*PLBDS(:)**XEX0DEPS + X1DEPS*PCJ(:)*PLBDS(:)**XEX1DEPS ) + ZZW(:) = ZZW(:)*(0.5+SIGN(0.5,ZZW(:))) - ABS(ZZW(:))*(0.5-SIGN(0.5,ZZW(:))) + END WHERE +! + P_RS_DEPS(:) = ZZW(:) + P_TH_DEPS(:) = P_RS_DEPS(:) * PLSFACT(:) +! + PA_TH(:) = PA_TH(:) + P_TH_DEPS(:) + PA_RV(:) = PA_RV(:) - P_RS_DEPS(:) + PA_RS(:) = PA_RS(:) + P_RS_DEPS(:) +! +! +!* 2.3 Conversion of pristine ice to r_s: RICNVS +! ------------------------------------------------ +! +! + ZZW(:) = 0.0 + ZZW2(:) = 0.0 + WHERE ( (PLBDI(:)<XLBDAICNVS_LIM) .AND. (PCIT(:)>XCTMIN(4)) & + .AND. (PSSI(:)>0.0) ) + ZZW(:) = (PLBDI(:)*XDICNVS_LIM)**(XALPHAI) + ZZX(:) = ( PSSI(:)/PAI(:) )*PCIT(:) * (ZZW(:)**XNUI) *EXP(-ZZW(:)) +! + ZZW(:) = ( XR0DEPIS + XR1DEPIS*PCJ(:) )*ZZX(:) +! + ZZW2(:) = ZZW(:) * (XC0DEPIS+XC1DEPIS*PCJ(:)) / (XR0DEPIS+XR1DEPIS*PCJ(:)) + END WHERE +! +P_RI_CNVS(:) = - ZZW(:) +P_CI_CNVS(:) = - ZZW2(:) +! +PA_RI(:) = PA_RI(:) + P_RI_CNVS(:) +PA_CI(:) = PA_CI(:) + P_CI_CNVS(:) +PA_RS(:) = PA_RS(:) - P_RI_CNVS(:) +! +! +END WHERE +! +! +END SUBROUTINE LIMA_ICE_SNOW_DEPOSITION diff --git a/src/MNH/lima_inst_procs.f90 b/src/MNH/lima_inst_procs.f90 new file mode 100644 index 0000000000000000000000000000000000000000..fe22db3a839f9a512f80485587ac6f7d6cfab536 --- /dev/null +++ b/src/MNH/lima_inst_procs.f90 @@ -0,0 +1,182 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ############################### + MODULE MODI_LIMA_INST_PROCS +! ############################### +! +INTERFACE + SUBROUTINE LIMA_INST_PROCS (PTSTEP, LDCOMPUTE, & + PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCRT, PCIT, & + PINT, & + P_CR_BRKU, & ! spontaneous break up of drops (BRKU) : Nr + P_TH_HONR, P_RR_HONR, P_CR_HONR, & ! rain drops homogeneous freezing (HONR) : rr, Nr, rg=-rr, th + P_TH_IMLT, P_RC_IMLT, P_CC_IMLT, & ! ice melting (IMLT) : rc, Nc, ri=-rc, Ni=-Nc, th, IFNF, IFNA + PB_TH, PB_RV, PB_RC, PB_RR, PB_RI, PB_RG, & + PB_CC, PB_CR, PB_CI, & + PB_IFNN ) +! +REAL, INTENT(IN) :: PTSTEP ! Time step +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:), INTENT(IN) :: PPABST ! abs. pressure at time t +! +REAL, DIMENSION(:), INTENT(IN) :: PTHT ! Theta at t +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! Rain water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRST ! Rain water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! Rain water m.r. at t +! +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! Cloud water conc. at t +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! Rain water conc. at t +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! Prinstine ice conc. at t +! +REAL, DIMENSION(:,:), INTENT(IN) :: PINT ! IFN C. activated at t +! +REAL, DIMENSION(:) , INTENT(INOUT) :: P_CR_BRKU ! Concentration change (#/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: P_TH_HONR ! +REAL, DIMENSION(:) , INTENT(INOUT) :: P_RR_HONR ! mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: P_CR_HONR ! Concentration change (#/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: P_TH_IMLT ! +REAL, DIMENSION(:) , INTENT(INOUT) :: P_RC_IMLT ! mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: P_CC_IMLT ! Concentration change (#/kg) +! +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_TH ! Cumulated theta change +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_RV ! Cumulated mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_RC ! Cumulated mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_RR ! Cumulated mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_RI ! Cumulated mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_RG ! Cumulated mr change (kg/kg) +! +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_CC ! Cumulated concentration change (#/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_CR ! Cumulated concentration change (#/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_CI ! Cumulated concentration change (#/kg) +! +REAL, DIMENSION(:,:), INTENT(INOUT) :: PB_IFNN ! Cumulated concentration change (#/kg) +! + END SUBROUTINE LIMA_INST_PROCS +END INTERFACE +END MODULE MODI_LIMA_INST_PROCS +! +! +! ########################################################################### +SUBROUTINE LIMA_INST_PROCS (PTSTEP, LDCOMPUTE, & + PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCRT, PCIT, & + PINT, & + P_CR_BRKU, & ! spontaneous break up of drops (BRKU) : Nr + P_TH_HONR, P_RR_HONR, P_CR_HONR, & ! rain drops homogeneous freezing (HONR) : rr, Nr, rg=-rr, th + P_TH_IMLT, P_RC_IMLT, P_CC_IMLT, & ! ice melting (IMLT) : rc, Nc, ri=-rc, Ni=-Nc, th, IFNF, IFNA + PB_TH, PB_RV, PB_RC, PB_RR, PB_RI, PB_RG, & + PB_CC, PB_CR, PB_CI, & + PB_IFNN ) +! ########################################################################### +! +!! PURPOSE +!! ------- +!! Compute sources of instantaneous microphysical processes for the +!! time-splitted version of LIMA +!! +!! AUTHOR +!! ------ +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +! +USE MODD_PARAM_LIMA, ONLY : LCOLD, LNUCL, LMEYERS, LSNOW, LWARM, LACTI, LRAIN, LHHONI, NMOD_CCN, NMOD_IFN +! +USE MODI_LIMA_DROPS_BREAK_UP +USE MODI_LIMA_DROPS_HOM_FREEZING +USE MODI_LIMA_ICE_MELTING + +IMPLICIT NONE + + + +REAL, INTENT(IN) :: PTSTEP ! Time step +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:), INTENT(IN) :: PPABST ! abs. pressure at time t +! +REAL, DIMENSION(:), INTENT(IN) :: PTHT ! Theta at t +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! Rain water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRST ! Rain water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! Rain water m.r. at t +! +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! Cloud water conc. at t +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! Rain water conc. at t +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! Prinstine ice conc. at t +! +REAL, DIMENSION(:,:), INTENT(IN) :: PINT ! IFN C. activated at t +! +REAL, DIMENSION(:) , INTENT(INOUT) :: P_CR_BRKU ! Concentration change (#/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: P_TH_HONR ! +REAL, DIMENSION(:) , INTENT(INOUT) :: P_RR_HONR ! mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: P_CR_HONR ! Concentration change (#/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: P_TH_IMLT ! +REAL, DIMENSION(:) , INTENT(INOUT) :: P_RC_IMLT ! mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: P_CC_IMLT ! Concentration change (#/kg) +! +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_TH ! Cumulated theta change +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_RV ! Cumulated mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_RC ! Cumulated mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_RR ! Cumulated mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_RI ! Cumulated mr change (kg/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_RG ! Cumulated mr change (kg/kg) +! +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_CC ! Cumulated concentration change (#/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_CR ! Cumulated concentration change (#/kg) +REAL, DIMENSION(:) , INTENT(INOUT) :: PB_CI ! Cumulated concentration change (#/kg) +! +REAL, DIMENSION(:,:), INTENT(INOUT) :: PB_IFNN ! Cumulated concentration change (#/kg) +! +!------------------------------------------------------------------------------- +! +IF (LWARM .AND. LRAIN) THEN + CALL LIMA_DROPS_BREAK_UP (LDCOMPUTE, & + PCRT, PRRT, & + P_CR_BRKU, & + PB_CR ) +END IF +! +!------------------------------------------------------------------------------- +! +IF (LCOLD .AND. LWARM .AND. LRAIN) THEN + CALL LIMA_DROPS_HOM_FREEZING (PTSTEP, LDCOMPUTE, & + PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCRT, & + P_TH_HONR, P_RR_HONR, P_CR_HONR, & + PB_TH, PB_RR, PB_CR, PB_RG ) +END IF +! +!------------------------------------------------------------------------------- +! +IF (LCOLD .AND. LWARM) THEN + CALL LIMA_ICE_MELTING (PTSTEP, LDCOMPUTE, & + PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCIT, PINT, & + P_TH_IMLT, P_RC_IMLT, P_CC_IMLT, & + PB_TH, PB_RC, PB_CC, PB_RI, PB_CI, PB_IFNN) +END IF +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_INST_PROCS diff --git a/src/MNH/lima_meyers_nucleation.f90 b/src/MNH/lima_meyers_nucleation.f90 new file mode 100644 index 0000000000000000000000000000000000000000..8f20189526e24357bd33718f151bd5b604d3052a --- /dev/null +++ b/src/MNH/lima_meyers_nucleation.f90 @@ -0,0 +1,338 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################## + MODULE MODI_LIMA_MEYERS_NUCLEATION +! ################################## +! +INTERFACE + SUBROUTINE LIMA_MEYERS_NUCLEATION (PTSTEP, & + PRHODREF, PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCIT, PINT, & + P_TH_HIND, P_RI_HIND, P_CI_HIND, & + P_RC_HINC, P_CC_HINC ) +! +REAL, INTENT(IN) :: PTSTEP +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHT ! Theta at time t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRST ! Snow/aggregate m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRGT ! Graupel m.r. at t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCIT ! Ice crystal C. source +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PINT ! Activated ice nuclei C. +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_TH_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_RI_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_CI_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_RC_HINC +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_CC_HINC +! +END SUBROUTINE LIMA_MEYERS_NUCLEATION +END INTERFACE +END MODULE MODI_LIMA_MEYERS_NUCLEATION +! +! ############################################################################# + SUBROUTINE LIMA_MEYERS_NUCLEATION (PTSTEP, & + PRHODREF, PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCIT, PINT, & + P_TH_HIND, P_RI_HIND, P_CI_HIND, & + P_RC_HINC, P_CC_HINC ) +! ############################################################################# +!! +!! PURPOSE +!! ------- +!! The purpose of this routine is to compute the heterogeneous nucleation +!! following Meyers (1992). +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAMETERS +USE MODD_CST +USE MODD_PARAM_LIMA +USE MODD_PARAM_LIMA_COLD +USE MODD_BUDGET +USE MODI_BUDGET +USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NI +! +USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHT ! Theta at time t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRST ! Snow/aggregate m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRGT ! Graupel m.r. at t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCIT ! Ice crystal C. source +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PINT ! Activated ice nuclei C. +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_TH_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_RI_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_CI_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_RC_HINC +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_CC_HINC +! +! +!* 0.2 Declarations of local variables : +! +! +INTEGER :: IIB, IIE, IJB, IJE, IKB, IKE ! Physical domain +INTEGER :: JL ! Loop index +INTEGER :: INEGT ! Case number of nucleation +! +LOGICAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & + :: GNEGT ! Test where to compute the nucleation +! +INTEGER, DIMENSION(SIZE(PRHODREF)) :: I1,I2,I3 ! Indexes for PACK replacement +! +REAL, DIMENSION(:), ALLOCATABLE :: ZRVT ! Water vapor m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRRT ! Rain water m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRIT ! Pristine ice m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRST ! Snow/aggregate m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRGT ! Graupel/hail m.r. at t +! +REAL, DIMENSION(:), ALLOCATABLE :: ZCCT ! Cloud water conc. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZCIT ! Pristine ice conc. source +! +REAL, DIMENSION(:), ALLOCATABLE :: ZTHT ! Theta source +! +REAL, DIMENSION(:,:), ALLOCATABLE :: ZINT ! Nucleated Ice nuclei conc. source + ! by Deposition/Contact +! +REAL, DIMENSION(:), ALLOCATABLE & + :: ZRHODREF, & ! RHO Dry REFerence + ZZT, & ! Temperature + ZPRES, & ! Pressure + ZEXNREF, & ! EXNer Pressure REFerence + ZZW, & ! Work array + ZZX, & ! Work array + ZZY, & ! Work array + ZLSFACT, & ! L_s/(Pi_ref*C_ph) + ZLVFACT, & ! L_v/(Pi_ref*C_ph) + ZSSI +! +REAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & + :: ZW, ZT ! work arrays +! +REAL, DIMENSION(:), ALLOCATABLE :: ZTCELSIUS +! +!------------------------------------------------------------------------------- +! +! +!* 1. PRELIMINARY COMPUTATIONS +! ------------------------ +! +P_TH_HIND(:,:,:) = 0. +P_RI_HIND(:,:,:) = 0. +P_CI_HIND(:,:,:) = 0. +P_RC_HINC(:,:,:) = 0. +P_CC_HINC(:,:,:) = 0. +! +! Physical domain +! +IIB=1+JPHEXT +IIE=SIZE(PTHT,1) - JPHEXT +IJB=1+JPHEXT +IJE=SIZE(PTHT,2) - JPHEXT +IKB=1+JPVEXT +IKE=SIZE(PTHT,3) - JPVEXT +! +! Temperature +! +ZT(:,:,:) = PTHT(:,:,:) * ( PPABST(:,:,:)/XP00 ) ** (XRD/XCPD) +! +! Saturation over ice +! +ZW(:,:,:) = EXP( XALPI - XBETAI/ZT(:,:,:) - XGAMI*ALOG(ZT(:,:,:) ) ) +ZW(:,:,:) = PRVT(:,:,:)*( PPABST(:,:,:)-ZW(:,:,:) ) / ( (XMV/XMD) * ZW(:,:,:) ) +! +! +!------------------------------------------------------------------------------- +! +! optimization by looking for locations where +! the temperature is negative only !!! +! +GNEGT(:,:,:) = .FALSE. +GNEGT(IIB:IIE,IJB:IJE,IKB:IKE) = ZT(IIB:IIE,IJB:IJE,IKB:IKE)<XTT .AND. & + ZW(IIB:IIE,IJB:IJE,IKB:IKE)>0.8 +INEGT = COUNTJV( GNEGT(:,:,:),I1(:),I2(:),I3(:)) +IF( INEGT >= 1 ) THEN + ALLOCATE(ZRVT(INEGT)) + ALLOCATE(ZRCT(INEGT)) + ALLOCATE(ZRRT(INEGT)) + ALLOCATE(ZRIT(INEGT)) + ALLOCATE(ZRST(INEGT)) + ALLOCATE(ZRGT(INEGT)) +! + ALLOCATE(ZTHT(INEGT)) +! + ALLOCATE(ZCCT(INEGT)) + ALLOCATE(ZINT(INEGT,1)) + ALLOCATE(ZCIT(INEGT)) +! + ALLOCATE(ZRHODREF(INEGT)) + ALLOCATE(ZZT(INEGT)) + ALLOCATE(ZPRES(INEGT)) + ALLOCATE(ZEXNREF(INEGT)) + DO JL=1,INEGT + ZRVT(JL) = PRVT(I1(JL),I2(JL),I3(JL)) + ZRCT(JL) = PRCT(I1(JL),I2(JL),I3(JL)) + ZRRT(JL) = PRRT(I1(JL),I2(JL),I3(JL)) + ZRIT(JL) = PRIT(I1(JL),I2(JL),I3(JL)) + ZRST(JL) = PRST(I1(JL),I2(JL),I3(JL)) + ZRGT(JL) = PRGT(I1(JL),I2(JL),I3(JL)) +! + ZCCT(JL) = PCCT(I1(JL),I2(JL),I3(JL)) +! + ZTHT(JL) = PTHT(I1(JL),I2(JL),I3(JL)) +! + ZCCT(JL) = PCCT(I1(JL),I2(JL),I3(JL)) + ZCIT(JL) = PCIT(I1(JL),I2(JL),I3(JL)) +! + ZRHODREF(JL) = PRHODREF(I1(JL),I2(JL),I3(JL)) + ZZT(JL) = ZT(I1(JL),I2(JL),I3(JL)) + ZPRES(JL) = PPABST(I1(JL),I2(JL),I3(JL)) + ZEXNREF(JL) = PEXNREF(I1(JL),I2(JL),I3(JL)) + ENDDO + ALLOCATE(ZZW(INEGT)) + ALLOCATE(ZZX(INEGT)) + ALLOCATE(ZZY(INEGT)) + ALLOCATE(ZLSFACT(INEGT)) + ALLOCATE(ZLVFACT(INEGT)) + ALLOCATE(ZSSI(INEGT)) + ALLOCATE(ZTCELSIUS(INEGT)) +! + ZZW(:) = ZEXNREF(:)*( XCPD+XCPV*ZRVT(:)+XCL*(ZRCT(:)+ZRRT(:)) & + +XCI*(ZRIT(:)+ZRST(:)+ZRGT(:)) ) + ZTCELSIUS(:) = MAX( ZZT(:)-XTT,-50.0 ) + ZLSFACT(:) = (XLSTT+(XCPV-XCI)*ZTCELSIUS(:))/ZZW(:) ! L_s/(Pi_ref*C_ph) + ZLVFACT(:) = (XLVTT+(XCPV-XCL)*ZTCELSIUS(:))/ZZW(:) ! L_v/(Pi_ref*C_ph) +! + ZZW(:) = EXP( XALPI - XBETAI/ZZT(:) - XGAMI*ALOG(ZZT(:)) ) ! es_i + ZSSI(:) = ZRVT(:)*(ZPRES(:)-ZZW(:))/((XMV/XMD)*ZZW(:)) - 1.0 + ! Supersaturation over ice +! +!--------------------------------------------------------------------------- +! +!* compute the heterogeneous nucleation by deposition: RVHNDI +! + DO JL=1,INEGT + ZINT(JL,1) = PINT(I1(JL),I2(JL),I3(JL),1) + END DO + ZZW(:) = 0.0 + ZZX(:) = 0.0 + ZZY(:) = 0.0 +! + WHERE( ZZT(:)<XTT-5.0 .AND. ZSSI(:)>0.0 ) + ZZY(:) = XNUC_DEP*EXP( XEXSI_DEP*100.*MIN(1.,ZSSI(:))+XEX_DEP)/ZRHODREF(:) + ZZX(:) = MAX( ZZY(:)-ZINT(:,1) , 0.0 ) ! number of ice crystals formed at this time step #/kg + ZZW(:) = MIN( XMNU0*ZZX(:) , ZRVT(:) ) ! mass of ice formed at this time step (kg/kg) + END WHERE + ! + P_CI_HIND(:,:,:) = UNPACK( ZZX(:), MASK=GNEGT(:,:,:), FIELD=0. ) + P_RI_HIND(:,:,:) = UNPACK( ZZW(:), MASK=GNEGT(:,:,:), FIELD=0. ) + P_TH_HIND(:,:,:) = UNPACK( ZZW(:)*(ZLSFACT(:)-ZLVFACT(:)), MASK=GNEGT(:,:,:), FIELD=0. ) + PTHT(:,:,:) = PTHT(:,:,:) + P_TH_HIND(:,:,:) + PRVT(:,:,:) = PRVT(:,:,:) - P_RI_HIND(:,:,:) + PRIT(:,:,:) = PRIT(:,:,:) + P_RI_HIND(:,:,:) + PCIT(:,:,:) = PCIT(:,:,:) + P_CI_HIND(:,:,:) + PINT(:,:,:,1) = PINT(:,:,:,1) + P_CI_HIND(:,:,:) +! +!--------------------------------------------------------------------------- +! +!* compute the heterogeneous nucleation by contact: RVHNCI +! +! + DO JL=1,INEGT + ZINT(JL,1) = PINT(I1(JL),I2(JL),I3(JL),1) + END DO + ZZW(:) = 0.0 + ZZX(:) = 0.0 + ZZY(:) = 0.0 +! + WHERE( ZZT(:)<XTT-2.0 .AND. ZCCT(:)>XCTMIN(2) .AND. ZRCT(:)>XRTMIN(2) ) + ZZY(:) = MIN( XNUC_CON * EXP( XEXTT_CON*ZTCELSIUS(:)+XEX_CON ) & + /ZRHODREF(:) , ZCCT(:) ) + ZZX(:) = MAX( ZZY(:)-ZINT(:,1),0.0 ) + ZZW(:) = MIN( (ZRCT(:)/ZCCT(:))*ZZX(:),ZRCT(:) ) + END WHERE +! + P_RC_HINC(:,:,:) = - UNPACK( ZZW(:), MASK=GNEGT(:,:,:), FIELD=0. ) + P_CC_HINC(:,:,:) = - UNPACK( ZZX(:), MASK=GNEGT(:,:,:), FIELD=0. ) + PTHT(:,:,:) = PTHT(:,:,:) + UNPACK( ZZW(:)*(ZLSFACT(:)-ZLVFACT(:)), MASK=GNEGT(:,:,:), FIELD=0. ) + PRCT(:,:,:) = PRCT(:,:,:) + P_RC_HINC(:,:,:) + PRIT(:,:,:) = PRIT(:,:,:) - P_RC_HINC(:,:,:) + PCCT(:,:,:) = PCCT(:,:,:) + P_CC_HINC(:,:,:) + PCIT(:,:,:) = PCIT(:,:,:) - P_CC_HINC(:,:,:) + PINT(:,:,:,1) = PINT(:,:,:,1) - P_CC_HINC(:,:,:) +! + DEALLOCATE(ZRVT) + DEALLOCATE(ZRCT) + DEALLOCATE(ZRRT) + DEALLOCATE(ZRIT) + DEALLOCATE(ZRST) + DEALLOCATE(ZRGT) +! + DEALLOCATE(ZTHT) +! + DEALLOCATE(ZCCT) + DEALLOCATE(ZINT) + DEALLOCATE(ZCIT) +! + DEALLOCATE(ZRHODREF) + DEALLOCATE(ZZT) + DEALLOCATE(ZTCELSIUS) + DEALLOCATE(ZPRES) + DEALLOCATE(ZEXNREF) + DEALLOCATE(ZSSI) + DEALLOCATE(ZZW) + DEALLOCATE(ZZX) + DEALLOCATE(ZZY) + DEALLOCATE(ZLSFACT) + DEALLOCATE(ZLVFACT) +! +END IF +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_MEYERS_NUCLEATION diff --git a/src/MNH/lima_mixed.f90 b/src/MNH/lima_mixed.f90 index 43ac5c1c4b4bc5139bc8da233010293f4b2efa7b..63a64e3c495f024b48fcb5e77e27b4f99d3422d8 100644 --- a/src/MNH/lima_mixed.f90 +++ b/src/MNH/lima_mixed.f90 @@ -13,7 +13,7 @@ INTERFACE PRHODREF, PEXNREF, PPABST, PW_NU, & PTHM, PPABSM, & PTHT, PRT, PSVT, & - PTHS, PRS, PSVS ) + PTHS, PRS, PSVS) ! LOGICAL, INTENT(IN) :: OSEDI ! switch to activate the ! cloud ice sedimentation @@ -49,14 +49,14 @@ END SUBROUTINE LIMA_MIXED END INTERFACE END MODULE MODI_LIMA_MIXED ! -! ############################################################# +! ####################################################################### SUBROUTINE LIMA_MIXED (OSEDI, OHHONI, KSPLITG, PTSTEP, KMI, & KRR, PZZ, PRHODJ, & PRHODREF, PEXNREF, PPABST, PW_NU, & PTHM, PPABSM, & PTHT, PRT, PSVT, & PTHS, PRS, PSVS ) -! ############################################################# +! ####################################################################### ! !! !! PURPOSE @@ -103,7 +103,7 @@ USE MODD_CST, ONLY : XP00, XRD, XRV, XMV, XMD, XCPD, XCPV, & XCL, XCI, XTT, XLSTT, XLVTT, & XALPI, XBETAI, XGAMI USE MODD_PARAM_LIMA, ONLY : NMOD_IFN, XRTMIN, XCTMIN, LWARM, LCOLD, & - NMOD_CCN, NMOD_IMM, LRAIN, LHAIL + NMOD_CCN, NMOD_IMM, LRAIN, LSNOW, LHAIL USE MODD_PARAM_LIMA_WARM, ONLY : XLBC, XLBEXC, XLBR, XLBEXR USE MODD_PARAM_LIMA_COLD, ONLY : XLBI, XLBEXI, XLBS, XLBEXS, XSCFAC USE MODD_PARAM_LIMA_MIXED, ONLY : XLBG, XLBEXG, XLBH, XLBEXH @@ -539,6 +539,7 @@ IF( IMICRO >= 1 ) THEN ! 3. Compute the fast RS and RG processes ! ------------------------------------ ! +IF (LSNOW) THEN CALL LIMA_MIXED_FAST_PROCESSES(ZRHODREF, ZZT, ZPRES, PTSTEP, & ZLSFACT, ZLVFACT, ZKA, ZDV, ZCJ, & ZRVT, ZRCT, ZRRT, ZRIT, ZRST, ZRGT, & @@ -549,6 +550,7 @@ IF( IMICRO >= 1 ) THEN ZRHODJ, GMICRO, PRHODJ, KMI, PTHS, & PRCS, PRRS, PRIS, PRSS, PRGS, PRHS, & PCCS, PCRS, PCIS ) +END IF ! !------------------------------------------------------------------------------- ! @@ -650,38 +652,38 @@ ELSE IF (NBUMOD==KMI .AND. LBU_ENABLE) THEN IF (LBUDGET_TH) THEN ZW(:,:,:) = PTHS(:,:,:)*PRHODJ(:,:,:) - CALL BUDGET (ZW,4,'DEPG_BU_RTH') + IF (LSNOW) CALL BUDGET (ZW,4,'DEPG_BU_RTH') CALL BUDGET (ZW,4,'IMLT_BU_RTH') CALL BUDGET (ZW,4,'BERFI_BU_RTH') - CALL BUDGET (ZW,4,'RIM_BU_RTH') - CALL BUDGET (ZW,4,'ACC_BU_RTH') - CALL BUDGET (ZW,4,'CFRZ_BU_RTH') - CALL BUDGET (ZW,4,'WETG_BU_RTH') - CALL BUDGET (ZW,4,'DRYG_BU_RTH') - CALL BUDGET (ZW,4,'GMLT_BU_RTH') + IF (LSNOW) CALL BUDGET (ZW,4,'RIM_BU_RTH') + IF (LSNOW .AND. LRAIN) CALL BUDGET (ZW,4,'ACC_BU_RTH') + IF (LSNOW) CALL BUDGET (ZW,4,'CFRZ_BU_RTH') + IF (LSNOW) CALL BUDGET (ZW,4,'WETG_BU_RTH') + IF (LSNOW) CALL BUDGET (ZW,4,'DRYG_BU_RTH') + IF (LSNOW) CALL BUDGET (ZW,4,'GMLT_BU_RTH') IF (LHAIL) CALL BUDGET (ZW,4,'WETH_BU_RTH') IF (LHAIL) CALL BUDGET (ZW,4,'HMLT_BU_RTH') ENDIF IF (LBUDGET_RV) THEN ZW(:,:,:) = PRVS(:,:,:)*PRHODJ(:,:,:) - CALL BUDGET (ZW,6,'DEPG_BU_RRV') + IF (LSNOW) CALL BUDGET (ZW,6,'DEPG_BU_RRV') ENDIF IF (LBUDGET_RC) THEN ZW(:,:,:) = PRCS(:,:,:)*PRHODJ(:,:,:) CALL BUDGET (ZW,7,'IMLT_BU_RRC') CALL BUDGET (ZW,7,'BERFI_BU_RRC') - CALL BUDGET (ZW,7,'RIM_BU_RRC') - CALL BUDGET (ZW,7,'WETG_BU_RRC') - CALL BUDGET (ZW,7,'DRYG_BU_RRC') + IF (LSNOW) CALL BUDGET (ZW,7,'RIM_BU_RRC') + IF (LSNOW) CALL BUDGET (ZW,7,'WETG_BU_RRC') + IF (LSNOW) CALL BUDGET (ZW,7,'DRYG_BU_RRC') IF (LHAIL) CALL BUDGET (ZW,7,'WETH_BU_RRC') ENDIF - IF (LBUDGET_RR) THEN + IF (LBUDGET_RR .AND. LRAIN) THEN ZW(:,:,:) = PRRS(:,:,:)*PRHODJ(:,:,:) - CALL BUDGET (ZW,8,'ACC_BU_RRR') - CALL BUDGET (ZW,8,'CFRZ_BU_RRR') - CALL BUDGET (ZW,8,'WETG_BU_RRR') - CALL BUDGET (ZW,8,'DRYG_BU_RRR') - CALL BUDGET (ZW,8,'GMLT_BU_RRR') + IF (LSNOW .AND. LRAIN) CALL BUDGET (ZW,8,'ACC_BU_RRR') + IF (LSNOW) CALL BUDGET (ZW,8,'CFRZ_BU_RRR') + IF (LSNOW) CALL BUDGET (ZW,8,'WETG_BU_RRR') + IF (LSNOW) CALL BUDGET (ZW,8,'DRYG_BU_RRR') + IF (LSNOW) CALL BUDGET (ZW,8,'GMLT_BU_RRR') IF (LHAIL) CALL BUDGET (ZW,8,'WETH_BU_RRR') IF (LHAIL) CALL BUDGET (ZW,8,'HMLT_BU_RRR') ENDIF @@ -689,28 +691,28 @@ ELSE ZW(:,:,:) = PRIS(:,:,:)*PRHODJ(:,:,:) CALL BUDGET (ZW,9,'IMLT_BU_RRI') CALL BUDGET (ZW,9,'BERFI_BU_RRI') - CALL BUDGET (ZW,9,'HMS_BU_RRI') - CALL BUDGET (ZW,9,'CFRZ_BU_RRI') - CALL BUDGET (ZW,9,'WETG_BU_RRI') - CALL BUDGET (ZW,9,'DRYG_BU_RRI') - CALL BUDGET (ZW,9,'HMG_BU_RRI') + IF (LSNOW) CALL BUDGET (ZW,9,'HMS_BU_RRI') + IF (LSNOW) CALL BUDGET (ZW,9,'CFRZ_BU_RRI') + IF (LSNOW) CALL BUDGET (ZW,9,'WETG_BU_RRI') + IF (LSNOW) CALL BUDGET (ZW,9,'DRYG_BU_RRI') + IF (LSNOW) CALL BUDGET (ZW,9,'HMG_BU_RRI') IF (LHAIL) CALL BUDGET (ZW,9,'WETH_BU_RRI') ENDIF - IF (LBUDGET_RS) THEN + IF (LBUDGET_RS .AND. LSNOW) THEN ZW(:,:,:) = PRSS(:,:,:)*PRHODJ(:,:,:) CALL BUDGET (ZW,10,'RIM_BU_RRS') CALL BUDGET (ZW,10,'HMS_BU_RRS') - CALL BUDGET (ZW,10,'ACC_BU_RRS') + IF (LRAIN) CALL BUDGET (ZW,10,'ACC_BU_RRS') CALL BUDGET (ZW,10,'CMEL_BU_RRS') CALL BUDGET (ZW,10,'WETG_BU_RRS') CALL BUDGET (ZW,10,'DRYG_BU_RRS') IF (LHAIL) CALL BUDGET (ZW,10,'WETH_BU_RRS') ENDIF - IF (LBUDGET_RG) THEN + IF (LBUDGET_RG .AND. LSNOW) THEN ZW(:,:,:) = PRGS(:,:,:)*PRHODJ(:,:,:) CALL BUDGET (ZW,11,'DEPG_BU_RRG') CALL BUDGET (ZW,11,'RIM_BU_RRG') - CALL BUDGET (ZW,11,'ACC_BU_RRG') + IF (LRAIN) CALL BUDGET (ZW,11,'ACC_BU_RRG') CALL BUDGET (ZW,11,'CMEL_BU_RRG') CALL BUDGET (ZW,11,'CFRZ_BU_RRG') CALL BUDGET (ZW,11,'WETG_BU_RRG') @@ -720,7 +722,7 @@ ELSE IF (LHAIL) CALL BUDGET (ZW,11,'WETH_BU_RRG') IF (LHAIL) CALL BUDGET (ZW,11,'COHG_BU_RRG') ENDIF - IF (LBUDGET_RH) THEN + IF (LBUDGET_RH .AND. LHAIL) THEN ZW(:,:,:) = PRHS(:,:,:)*PRHODJ(:,:,:) CALL BUDGET (ZW,12,'WETG_BU_RRH') IF (LHAIL) CALL BUDGET (ZW,12,'WETH_BU_RRH') @@ -730,27 +732,27 @@ ELSE IF (LBUDGET_SV) THEN ZW(:,:,:) = PCCS(:,:,:)*PRHODJ(:,:,:) CALL BUDGET (ZW,12+NSV_LIMA_NC,'IMLT_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NC,'RIM_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NC,'WETG_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NC,'DRYG_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NC,'RIM_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NC,'WETG_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NC,'DRYG_BU_RSV') IF (LHAIL) CALL BUDGET (ZW,12+NSV_LIMA_NC,'WETH_BU_RSV') ! ZW(:,:,:) = PCRS(:,:,:)*PRHODJ(:,:,:) - CALL BUDGET (ZW,12+NSV_LIMA_NR,'ACC_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NR,'CFRZ_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NR,'WETG_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NR,'DRYG_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NR,'GMLT_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NR,'ACC_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NR,'CFRZ_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NR,'WETG_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NR,'DRYG_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NR,'GMLT_BU_RSV') IF (LHAIL) CALL BUDGET (ZW,12+NSV_LIMA_NR,'WETH_BU_RSV') IF (LHAIL) CALL BUDGET (ZW,12+NSV_LIMA_NR,'HMLT_BU_RSV') ! ZW(:,:,:) = PCIS(:,:,:)*PRHODJ(:,:,:) CALL BUDGET (ZW,12+NSV_LIMA_NI,'IMLT_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NI,'HMS_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NI,'CFRZ_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NI,'WETG_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NI,'DRYG_BU_RSV') - CALL BUDGET (ZW,12+NSV_LIMA_NI,'HMG_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NI,'HMS_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NI,'CFRZ_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NI,'WETG_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NI,'DRYG_BU_RSV') + IF (LSNOW) CALL BUDGET (ZW,12+NSV_LIMA_NI,'HMG_BU_RSV') IF (LHAIL) CALL BUDGET (ZW,12+NSV_LIMA_NI,'WETH_BU_RSV') ENDIF ENDIF diff --git a/src/MNH/lima_mixed_fast_processes.f90 b/src/MNH/lima_mixed_fast_processes.f90 index 06058f529c6f4b88823437681c02d70e340b65c3..653c46b9ada79b21f834fe07d0cf051c992c004e 100644 --- a/src/MNH/lima_mixed_fast_processes.f90 +++ b/src/MNH/lima_mixed_fast_processes.f90 @@ -261,7 +261,7 @@ IF( IGRIM>0 ) THEN ! set of Lbda_s used to tabulate some moments of the incomplete ! gamma function ! - ZVEC2(1:IGRIM) = MAX( 1.00001, MIN( FLOAT(NGAMINC)-0.00001, & + ZVEC2(1:IGRIM) = MAX( 1.0001, MIN( FLOAT(NGAMINC)-0.0001, & XRIMINTP1 * LOG( ZVEC1(1:IGRIM) ) + XRIMINTP2 ) ) IVEC2(1:IGRIM) = INT( ZVEC2(1:IGRIM) ) ZVEC2(1:IGRIM) = ZVEC2(1:IGRIM) - FLOAT( IVEC2(1:IGRIM) ) @@ -353,7 +353,7 @@ IF( IGRIM>0 ) THEN ALLOCATE(IVEC2(IGRIM)) ! ZVEC1(:) = PACK( ZLBDAC(:),MASK=GRIM(:) ) - ZVEC2(1:IGRIM) = MAX( 1.00001, MIN( FLOAT(NGAMINC)-0.00001, & + ZVEC2(1:IGRIM) = MAX( 1.0001, MIN( FLOAT(NGAMINC)-0.0001, & XHMLINTP1 * LOG( ZVEC1(1:IGRIM) ) + XHMLINTP2 ) ) IVEC2(1:IGRIM) = INT( ZVEC2(1:IGRIM) ) ZVEC2(1:IGRIM) = ZVEC2(1:IGRIM) - FLOAT( IVEC2(1:IGRIM) ) @@ -398,7 +398,7 @@ ZZW1(:,2:3) = 0.0 GACC(:) = (ZRRT(:)>XRTMIN(3)) .AND. (ZRST(:)>XRTMIN(5)) .AND. (ZRRS(:)>XRTMIN(3)/PTSTEP) .AND. (ZZT(:)<XTT) IGACC = COUNT( GACC(:) ) ! -IF( IGACC>0 ) THEN +IF( IGACC>0 .AND. LRAIN) THEN ! ! 1.3.0 allocations ! @@ -417,12 +417,12 @@ IF( IGACC>0 ) THEN ! in the geometrical set of (Lbda_s,Lbda_r) couplet use to ! tabulate the RACCSS-kernel ! - ZVEC1(1:IGACC) = MAX( 1.00001, MIN( FLOAT(NACCLBDAS)-0.00001, & + ZVEC1(1:IGACC) = MAX( 1.0001, MIN( FLOAT(NACCLBDAS)-0.0001, & XACCINTP1S * LOG( ZVEC1(1:IGACC) ) + XACCINTP2S ) ) IVEC1(1:IGACC) = INT( ZVEC1(1:IGACC) ) ZVEC1(1:IGACC) = ZVEC1(1:IGACC) - FLOAT( IVEC1(1:IGACC) ) ! - ZVEC2(1:IGACC) = MAX( 1.00001, MIN( FLOAT(NACCLBDAR)-0.00001, & + ZVEC2(1:IGACC) = MAX( 1.0001, MIN( FLOAT(NACCLBDAR)-0.0001, & XACCINTP1R * LOG( ZVEC2(1:IGACC) ) + XACCINTP2R ) ) IVEC2(1:IGACC) = INT( ZVEC2(1:IGACC) ) ZVEC2(1:IGACC) = ZVEC2(1:IGACC) - FLOAT( IVEC2(1:IGACC) ) @@ -443,7 +443,7 @@ IF( IGACC>0 ) THEN ! 1.3.4 raindrop accretion on the small sized aggregates ! WHERE ( GACC(:) ) - ZZW1(:,2) = & !! coef of RRACCS + ZZW1(:,2) = ZCRT(:) * & !! coef of RRACCS XFRACCSS*( ZLBDAS(:)**XCXS )*( ZRHODREF(:)**(-XCEXVT-1.) ) & *( XLBRACCS1/((ZLBDAS(:)**2) ) + & XLBRACCS2/( ZLBDAS(:) * ZLBDAR(:) ) + & @@ -460,12 +460,12 @@ IF( IGACC>0 ) THEN ! RACCS-kernel ! DO JJ = 1,IGACC - ZVEC3(JJ) = ( XKER_RACCS(IVEC2(JJ)+1,IVEC1(JJ)+1)* ZVEC1(JJ) & - - XKER_RACCS(IVEC2(JJ)+1,IVEC1(JJ) )*(ZVEC1(JJ) - 1.0) ) & - * ZVEC2(JJ) & - - ( XKER_RACCS(IVEC2(JJ) ,IVEC1(JJ)+1)* ZVEC1(JJ) & - - XKER_RACCS(IVEC2(JJ) ,IVEC1(JJ) )*(ZVEC1(JJ) - 1.0) ) & - * (ZVEC2(JJ) - 1.0) + ZVEC3(JJ) = ( XKER_RACCS(IVEC1(JJ)+1,IVEC2(JJ)+1)* ZVEC2(JJ) & + - XKER_RACCS(IVEC1(JJ)+1,IVEC2(JJ) )*(ZVEC2(JJ) - 1.0) ) & + * ZVEC1(JJ) & + - ( XKER_RACCS(IVEC1(JJ) ,IVEC2(JJ)+1)* ZVEC2(JJ) & + - XKER_RACCS(IVEC1(JJ) ,IVEC2(JJ) )*(ZVEC2(JJ) - 1.0) ) & + * (ZVEC1(JJ) - 1.0) END DO ZZW1(:,2) = ZZW1(:,2)*UNPACK( VECTOR=ZVEC3(:),MASK=GACC(:),FIELD=0.0 ) !! RRACCS ! @@ -486,7 +486,7 @@ IF( IGACC>0 ) THEN ! into graupeln ! WHERE ( GACC(:) .AND. (ZRSS(:)>XRTMIN(5)/PTSTEP) ) - ZZW1(:,2) = MIN( ZRRS(:),ZZW1(:,2)-ZZW1(:,4) ) ! RRACCSG + ZZW1(:,2) = MAX( MIN( ZRRS(:),ZZW1(:,2)-ZZW1(:,4) ) , 0. ) ! RRACCSG ZZW1(:,3) = MIN( ZRSS(:),XFSACCRG*ZZW(:)* & ! RSACCRG ( ZLBDAS(:)**(XCXS-XBS) )*( ZRHODREF(:)**(-XCEXVT-1.) ) & *( XLBSACCR1/((ZLBDAR(:)**2) ) + & @@ -506,7 +506,7 @@ IF( IGACC>0 ) THEN DEALLOCATE(ZVEC1) END IF ! -IF (NBUMOD==KMI .AND. LBU_ENABLE) THEN +IF (NBUMOD==KMI .AND. LBU_ENABLE .AND. LRAIN) THEN IF (LBUDGET_TH) CALL BUDGET ( & UNPACK(ZTHS(:),MASK=GMICRO(:,:,:),FIELD=PTHS)*PRHODJ(:,:,:),& 4,'ACC_BU_RTH') @@ -654,12 +654,12 @@ IF( IGDRY>0 ) THEN ! in the geometrical set of (Lbda_g,Lbda_s) couplet use to ! tabulate the SDRYG-kernel ! - ZVEC1(1:IGDRY) = MAX( 1.00001, MIN( FLOAT(NDRYLBDAG)-0.00001, & + ZVEC1(1:IGDRY) = MAX( 1.0001, MIN( FLOAT(NDRYLBDAG)-0.0001, & XDRYINTP1G * LOG( ZVEC1(1:IGDRY) ) + XDRYINTP2G ) ) IVEC1(1:IGDRY) = INT( ZVEC1(1:IGDRY) ) ZVEC1(1:IGDRY) = ZVEC1(1:IGDRY) - FLOAT( IVEC1(1:IGDRY) ) ! - ZVEC2(1:IGDRY) = MAX( 1.00001, MIN( FLOAT(NDRYLBDAS)-0.00001, & + ZVEC2(1:IGDRY) = MAX( 1.0001, MIN( FLOAT(NDRYLBDAS)-0.0001, & XDRYINTP1S * LOG( ZVEC2(1:IGDRY) ) + XDRYINTP2S ) ) IVEC2(1:IGDRY) = INT( ZVEC2(1:IGDRY) ) ZVEC2(1:IGDRY) = ZVEC2(1:IGDRY) - FLOAT( IVEC2(1:IGDRY) ) @@ -718,12 +718,12 @@ IF( IGDRY>0 ) THEN ! in the geometrical set of (Lbda_g,Lbda_r) couplet use to ! tabulate the RDRYG-kernel ! - ZVEC1(1:IGDRY) = MAX( 1.00001, MIN( FLOAT(NDRYLBDAG)-0.00001, & + ZVEC1(1:IGDRY) = MAX( 1.0001, MIN( FLOAT(NDRYLBDAG)-0.0001, & XDRYINTP1G * LOG( ZVEC1(1:IGDRY) ) + XDRYINTP2G ) ) IVEC1(1:IGDRY) = INT( ZVEC1(1:IGDRY) ) ZVEC1(1:IGDRY) = ZVEC1(1:IGDRY) - FLOAT( IVEC1(1:IGDRY) ) ! - ZVEC2(1:IGDRY) = MAX( 1.00001, MIN( FLOAT(NDRYLBDAR)-0.00001, & + ZVEC2(1:IGDRY) = MAX( 1.0001, MIN( FLOAT(NDRYLBDAR)-0.0001, & XDRYINTP1R * LOG( ZVEC2(1:IGDRY) ) + XDRYINTP2R ) ) IVEC2(1:IGDRY) = INT( ZVEC2(1:IGDRY) ) ZVEC2(1:IGDRY) = ZVEC2(1:IGDRY) - FLOAT( IVEC2(1:IGDRY) ) @@ -742,7 +742,7 @@ IF( IGDRY>0 ) THEN ZZW(:) = UNPACK( VECTOR=ZVEC3(:),MASK=GDRY,FIELD=0.0 ) ! WHERE( GDRY(:) ) - ZZW1(:,4) = MIN( ZRRS(:),XFRDRYG*ZZW(:) & ! RRDRYG + ZZW1(:,4) = MIN( ZRRS(:),XFRDRYG*ZZW(:) * ZCRT(:) & ! RRDRYG *( ZLBDAR(:)**(-3) )*( ZLBDAG(:)**XCXG ) & *( ZRHODREF(:)**(-XCEXVT-1.) ) & *( XLBRDRYG1/( ZLBDAG(:)**2 ) + & @@ -924,7 +924,7 @@ IF( IGDRY>0 ) THEN ALLOCATE(IVEC2(IGDRY)) ! ZVEC1(:) = PACK( ZLBDAC(:),MASK=GDRY(:) ) - ZVEC2(1:IGDRY) = MAX( 1.00001, MIN( FLOAT(NGAMINC)-0.00001, & + ZVEC2(1:IGDRY) = MAX( 1.0001, MIN( FLOAT(NGAMINC)-0.0001, & XHMLINTP1 * LOG( ZVEC1(1:IGDRY) ) + XHMLINTP2 ) ) IVEC2(1:IGDRY) = INT( ZVEC2(1:IGDRY) ) ZVEC2(1:IGDRY) = ZVEC2(1:IGDRY) - FLOAT( IVEC2(1:IGDRY) ) @@ -1055,12 +1055,12 @@ IF( IHAIL>0 ) THEN ! in the geometrical set of (Lbda_h,Lbda_s) couplet use to ! tabulate the SWETH-kernel ! - ZVEC1(1:IGWET) = MAX( 1.00001, MIN( FLOAT(NWETLBDAH)-0.00001, & + ZVEC1(1:IGWET) = MAX( 1.0001, MIN( FLOAT(NWETLBDAH)-0.0001, & XWETINTP1H * LOG( ZVEC1(1:IGWET) ) + XWETINTP2H ) ) IVEC1(1:IGWET) = INT( ZVEC1(1:IGWET) ) ZVEC1(1:IGWET) = ZVEC1(1:IGWET) - FLOAT( IVEC1(1:IGWET) ) ! - ZVEC2(1:IGWET) = MAX( 1.00001, MIN( FLOAT(NWETLBDAS)-0.00001, & + ZVEC2(1:IGWET) = MAX( 1.0001, MIN( FLOAT(NWETLBDAS)-0.0001, & XWETINTP1S * LOG( ZVEC2(1:IGWET) ) + XWETINTP2S ) ) IVEC2(1:IGWET) = INT( ZVEC2(1:IGWET) ) ZVEC2(1:IGWET) = ZVEC2(1:IGWET) - FLOAT( IVEC2(1:IGWET) ) @@ -1118,12 +1118,12 @@ IF( IHAIL>0 ) THEN ! in the geometrical set of (Lbda_h,Lbda_g) couplet use to ! tabulate the GWETH-kernel ! - ZVEC1(1:IGWET) = MAX( 1.00001, MIN( FLOAT(NWETLBDAG)-0.00001, & + ZVEC1(1:IGWET) = MAX( 1.0001, MIN( FLOAT(NWETLBDAG)-0.0001, & XWETINTP1H * LOG( ZVEC1(1:IGWET) ) + XWETINTP2H ) ) IVEC1(1:IGWET) = INT( ZVEC1(1:IGWET) ) ZVEC1(1:IGWET) = ZVEC1(1:IGWET) - FLOAT( IVEC1(1:IGWET) ) ! - ZVEC2(1:IGWET) = MAX( 1.00001, MIN( FLOAT(NWETLBDAG)-0.00001, & + ZVEC2(1:IGWET) = MAX( 1.0001, MIN( FLOAT(NWETLBDAG)-0.0001, & XWETINTP1G * LOG( ZVEC2(1:IGWET) ) + XWETINTP2G ) ) IVEC2(1:IGWET) = INT( ZVEC2(1:IGWET) ) ZVEC2(1:IGWET) = ZVEC2(1:IGWET) - FLOAT( IVEC2(1:IGWET) ) diff --git a/src/MNH/lima_mixed_slow_processes.f90 b/src/MNH/lima_mixed_slow_processes.f90 index 9146da229d127b36f07b9944bf421369a1404100..3e217b6912520b741c7260ebfd29a8a8e61dbc6f 100644 --- a/src/MNH/lima_mixed_slow_processes.f90 +++ b/src/MNH/lima_mixed_slow_processes.f90 @@ -113,7 +113,7 @@ END MODULE MODI_LIMA_MIXED_SLOW_PROCESSES ! USE MODD_CST, ONLY : XTT, XALPI, XBETAI, XGAMI, & XALPW, XBETAW, XGAMW -USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN, NMOD_IFN +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN, NMOD_IFN, LSNOW USE MODD_PARAM_LIMA_COLD, ONLY : XDI, X0DEPI, X2DEPI, XSCFAC USE MODD_PARAM_LIMA_MIXED, ONLY : XLBG, XLBEXG, XLBDAG_MAX, & X0DEPG, XEX0DEPG, X1DEPG, XEX1DEPG @@ -178,6 +178,7 @@ INTEGER :: JMOD_IFN ! --------------------------------------------- ! ! +IF (LSNOW) THEN ZZW(:) = 0.0 WHERE ( (ZRGT(:)>XRTMIN(6)) .AND. (ZRGS(:)>XRTMIN(6)/PTSTEP) ) !Correction BVIE RHODREF @@ -202,7 +203,8 @@ INTEGER :: JMOD_IFN IF (LBUDGET_RG) CALL BUDGET ( & UNPACK(ZRGS(:),MASK=GMICRO(:,:,:),FIELD=PRGS)*PRHODJ(:,:,:), & 11,'DEPG_BU_RRG') - END IF + END IF +END IF ! ! !* 2 cloud ice Melting: RIMLTC and CIMLTC diff --git a/src/MNH/lima_nucleation_procs.f90 b/src/MNH/lima_nucleation_procs.f90 new file mode 100644 index 0000000000000000000000000000000000000000..f18b785891f504006028159932e2bcacd722d1d8 --- /dev/null +++ b/src/MNH/lima_nucleation_procs.f90 @@ -0,0 +1,295 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ############################### + MODULE MODI_LIMA_NUCLEATION_PROCS +! ############################### +! +INTERFACE + SUBROUTINE LIMA_NUCLEATION_PROCS (PTSTEP, TPFILE, OCLOSE_OUT, PRHODJ, & + PRHODREF, PEXNREF, PPABST, PT, PTM, PW_NU, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCRT, PCIT, & + PNFT, PNAT, PIFT, PINT, PNIT, PNHT ) +! +USE MODD_IO_ll, ONLY: TFILEDATA +! +REAL, INTENT(IN) :: PTSTEP ! Double Time step +TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file +LOGICAL, INTENT(IN) :: OCLOSE_OUT ! Conditional closure of +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODJ ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PT ! Temperature +REAL, DIMENSION(:,:,:), INTENT(IN) :: PTM ! Temperature at time t-dt +REAL, DIMENSION(:,:,:), INTENT(IN) :: PW_NU ! updraft velocity used for +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHT ! Theta at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRIT ! Pristine ice m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRST ! Snow m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRGT ! Graupel m.r. at t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCCT ! Cloud water conc. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCRT ! Rain water conc. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCIT ! Prinstine ice conc. at t +! +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNFT ! CCN C. available at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNAT ! CCN C. activated at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PIFT ! IFN C. available at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PINT ! IFN C. activated at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNIT ! Coated IFN activated at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PNHT ! CCN hom freezing +! +END SUBROUTINE LIMA_NUCLEATION_PROCS +END INTERFACE +END MODULE MODI_LIMA_NUCLEATION_PROCS +! ############################################################################# +SUBROUTINE LIMA_NUCLEATION_PROCS (PTSTEP, TPFILE, OCLOSE_OUT, PRHODJ, & + PRHODREF, PEXNREF, PPABST, PT, PTM, PW_NU, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCRT, PCIT, & + PNFT, PNAT, PIFT, PINT, PNIT, PNHT ) +! ############################################################################# +! +!! PURPOSE +!! ------- +!! Compute nucleation processes for the time-splitted version of LIMA +!! +!! AUTHOR +!! ------ +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +USE MODD_PARAM_LIMA, ONLY : LCOLD, LNUCL, LMEYERS, LSNOW, LWARM, LACTI, LRAIN, LHHONI, & + NMOD_CCN, NMOD_IFN, NMOD_IMM +USE MODD_BUDGET, ONLY : LBU_ENABLE, LBUDGET_TH, LBUDGET_RV, LBUDGET_RC, LBUDGET_RR,& + LBUDGET_RI, LBUDGET_RS, LBUDGET_RG, LBUDGET_RH, LBUDGET_SV +USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NR, NSV_LIMA_CCN_FREE, & + NSV_LIMA_NI, NSV_LIMA_IFN_FREE +! +USE MODD_IO_ll, ONLY: TFILEDATA +USE MODI_BUDGET +USE MODI_LIMA_CCN_ACTIVATION +USE MODI_LIMA_PHILLIPS_IFN_NUCLEATION +USE MODI_LIMA_MEYERS_NUCLEATION +USE MODI_LIMA_CCN_HOM_FREEZING +! +!------------------------------------------------------------------------------- +! +IMPLICIT NONE +! +!------------------------------------------------------------------------------- +! +REAL, INTENT(IN) :: PTSTEP ! Double Time step +TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file +LOGICAL, INTENT(IN) :: OCLOSE_OUT ! Conditional closure of +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODJ ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PT ! Temperature +REAL, DIMENSION(:,:,:), INTENT(IN) :: PTM ! Temperature at time t-dt +REAL, DIMENSION(:,:,:), INTENT(IN) :: PW_NU ! updraft velocity used for +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHT ! Theta at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRIT ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRST ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRGT ! Rain water m.r. at t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCCT ! Cloud water conc. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCRT ! Rain water conc. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCIT ! Prinstine ice conc. at t +! +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNFT ! CCN C. available at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNAT ! CCN C. activated at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PIFT ! IFN C. available at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PINT ! IFN C. activated at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNIT ! Coated IFN activated at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PNHT ! CCN hom. freezing +! +!------------------------------------------------------------------------------- +! +REAL, DIMENSION(SIZE(PT,1),SIZE(PT,2),SIZE(PT,3)) :: Z_TH_HIND, Z_RI_HIND, Z_CI_HIND, Z_RC_HINC, Z_CC_HINC +REAL, DIMENSION(SIZE(PT,1),SIZE(PT,2),SIZE(PT,3)) :: ZTHT, ZRVT, ZRCT, ZRRT, ZRIT, ZRST, ZRGT +REAL, DIMENSION(SIZE(PT,1),SIZE(PT,2),SIZE(PT,3)) :: ZCCT, ZCRT, ZCIT +REAL, DIMENSION(SIZE(PT,1),SIZE(PT,2),SIZE(PT,3),NMOD_CCN) :: ZNFT, ZNAT +REAL, DIMENSION(SIZE(PT,1),SIZE(PT,2),SIZE(PT,3),NMOD_IFN) :: ZIFT, ZINT +REAL, DIMENSION(SIZE(PT,1),SIZE(PT,2),SIZE(PT,3),NMOD_IMM) :: ZNIT +REAL, DIMENSION(SIZE(PT,1),SIZE(PT,2),SIZE(PT,3)) :: ZNHT +! +INTEGER :: JL +!------------------------------------------------------------------------------- +! +ZTHT(:,:,:) = PTHT(:,:,:) +ZRVT(:,:,:) = PRVT(:,:,:) +ZRCT(:,:,:) = PRCT(:,:,:) +ZCCT(:,:,:) = PCCT(:,:,:) +ZRRT(:,:,:) = PRRT(:,:,:) +ZCRT(:,:,:) = PCRT(:,:,:) +ZRIT(:,:,:) = PRIT(:,:,:) +ZCIT(:,:,:) = PCIT(:,:,:) +ZRST(:,:,:) = PRST(:,:,:) +ZRGT(:,:,:) = PRGT(:,:,:) +ZNFT(:,:,:,:) = PNFT(:,:,:,:) +ZNAT(:,:,:,:) = PNAT(:,:,:,:) +ZIFT(:,:,:,:) = PIFT(:,:,:,:) +ZINT(:,:,:,:) = PINT(:,:,:,:) +ZNIT(:,:,:,:) = PNIT(:,:,:,:) +ZNHT(:,:,:) = PNHT(:,:,:) +! +!------------------------------------------------------------------------------- +! +IF (LWARM .AND. LACTI .AND. NMOD_CCN.GE.1) THEN + CALL LIMA_CCN_ACTIVATION (PTSTEP, TPFILE, OCLOSE_OUT, & + PRHODREF, PEXNREF, PPABST, PT, PTM, PW_NU, & + ZTHT, ZRVT, ZRCT, ZCCT, ZRRT, ZNFT, ZNAT) + PTHT(:,:,:) = ZTHT(:,:,:) + PRVT(:,:,:) = ZRVT(:,:,:) + PRCT(:,:,:) = ZRCT(:,:,:) + PCCT(:,:,:) = ZCCT(:,:,:) + PNFT(:,:,:,:) = ZNFT(:,:,:,:) + PNAT(:,:,:,:) = ZNAT(:,:,:,:) +! +! Call budgets +! + IF (LBU_ENABLE) THEN + IF (LBUDGET_TH) CALL BUDGET (PTHT(:,:,:)*PRHODJ(:,:,:)/PTSTEP, 4, 'HENU_BU_RTH') + IF (LBUDGET_RV) CALL BUDGET (PRVT(:,:,:)*PRHODJ(:,:,:)/PTSTEP, 6, 'HENU_BU_RRV') + IF (LBUDGET_RC) CALL BUDGET (PRCT(:,:,:)*PRHODJ(:,:,:)/PTSTEP, 7, 'HENU_BU_RRC') + IF (LBUDGET_SV) THEN + CALL BUDGET (PCCT(:,:,:)*PRHODJ(:,:,:)/PTSTEP, 12+NSV_LIMA_NC, 'HENU_BU_RSV') + DO JL=1, NMOD_CCN + CALL BUDGET (PNFT(:,:,:,JL)*PRHODJ(:,:,:)/PTSTEP,12+NSV_LIMA_CCN_FREE+JL-1,'HENU_BU_RSV') + END DO + END IF + END IF +END IF +! +!------------------------------------------------------------------------------- +! +IF (LCOLD .AND. LNUCL .AND. .NOT.LMEYERS .AND. NMOD_IFN.GE.1) THEN + CALL LIMA_PHILLIPS_IFN_NUCLEATION (PTSTEP, & + PRHODREF, PEXNREF, PPABST, & + ZTHT, ZRVT, ZRCT, ZRRT, ZRIT, ZRST, ZRGT, & + ZCCT, ZCIT, ZNAT, ZIFT, ZINT, ZNIT, & + Z_TH_HIND, Z_RI_HIND, Z_CI_HIND, & + Z_RC_HINC, Z_CC_HINC ) +! +! Call budgets +! + IF (LBU_ENABLE) THEN + IF (LBUDGET_TH) CALL BUDGET ((PTHT(:,:,:)+Z_TH_HIND(:,:,:))*PRHODJ(:,:,:)/PTSTEP,4, 'HIND_BU_RTH') + IF (LBUDGET_RV) CALL BUDGET ((PRVT(:,:,:)-Z_RI_HIND(:,:,:))*PRHODJ(:,:,:)/PTSTEP,6, 'HIND_BU_RRV') + IF (LBUDGET_RI) CALL BUDGET ((PRIT(:,:,:)+Z_RI_HIND(:,:,:))*PRHODJ(:,:,:)/PTSTEP,9, 'HIND_BU_RRI') + IF (LBUDGET_SV) THEN + CALL BUDGET ((PCIT(:,:,:)+Z_CI_HIND(:,:,:))*PRHODJ(:,:,:)/PTSTEP,12+NSV_LIMA_NI, 'HIND_BU_RSV') + IF (NMOD_IFN.GE.1) THEN + DO JL=1, NMOD_IFN + CALL BUDGET ((ZIFT(:,:,:,JL))*PRHODJ(:,:,:)/PTSTEP, 12+NSV_LIMA_IFN_FREE+JL-1,'HIND_BU_RSV') + END DO + END IF + END IF +! + IF (LBUDGET_TH) CALL BUDGET (ZTHT(:,:,:)*PRHODJ(:,:,:)/PTSTEP,4,'HINC_BU_RTH') + IF (LBUDGET_RC) CALL BUDGET (ZRCT(:,:,:)*PRHODJ(:,:,:)/PTSTEP,7,'HINC_BU_RRC') + IF (LBUDGET_RI) CALL BUDGET (ZRIT(:,:,:)*PRHODJ(:,:,:)/PTSTEP,9,'HINC_BU_RRI') + IF (LBUDGET_SV) THEN + CALL BUDGET (ZCCT(:,:,:)*PRHODJ(:,:,:)/PTSTEP,12+NSV_LIMA_NC,'HINC_BU_RSV') + CALL BUDGET (ZCIT(:,:,:)*PRHODJ(:,:,:)/PTSTEP,12+NSV_LIMA_NI,'HINC_BU_RSV') + END IF + END IF +! + PTHT(:,:,:) = ZTHT(:,:,:) + PRVT(:,:,:) = ZRVT(:,:,:) + PRCT(:,:,:) = ZRCT(:,:,:) + PCCT(:,:,:) = ZCCT(:,:,:) + PRIT(:,:,:) = ZRIT(:,:,:) + PCIT(:,:,:) = ZCIT(:,:,:) + PNAT(:,:,:,:) = ZNAT(:,:,:,:) + PIFT(:,:,:,:) = ZIFT(:,:,:,:) + PINT(:,:,:,:) = ZINT(:,:,:,:) + PNIT(:,:,:,:) = ZNIT(:,:,:,:) +END IF +! +!------------------------------------------------------------------------------- +! +IF (LCOLD .AND. LNUCL .AND. LMEYERS) THEN + CALL LIMA_MEYERS_NUCLEATION (PTSTEP, & + PRHODREF, PEXNREF, PPABST, & + ZTHT, ZRVT, ZRCT, ZRRT, ZRIT, ZRST, ZRGT, & + ZCCT, ZCIT, ZINT, & + Z_TH_HIND, Z_RI_HIND, Z_CI_HIND, & + Z_RC_HINC, Z_CC_HINC ) +! +! Call budgets +! + IF (LBU_ENABLE) THEN + IF (LBUDGET_TH) CALL BUDGET ((PTHT(:,:,:)+Z_TH_HIND(:,:,:))*PRHODJ(:,:,:)/PTSTEP,4, 'HIND_BU_RTH') + IF (LBUDGET_RV) CALL BUDGET ((PRVT(:,:,:)-Z_RI_HIND(:,:,:))*PRHODJ(:,:,:)/PTSTEP,6, 'HIND_BU_RRV') + IF (LBUDGET_RI) CALL BUDGET ((PRIT(:,:,:)+Z_RI_HIND(:,:,:))*PRHODJ(:,:,:)/PTSTEP,9, 'HIND_BU_RRI') + IF (LBUDGET_SV) CALL BUDGET ((PCIT(:,:,:)+Z_CI_HIND(:,:,:))*PRHODJ(:,:,:)/PTSTEP,12+NSV_LIMA_NI,'HIND_BU_RSV') +! + IF (LBUDGET_TH) CALL BUDGET (ZTHT(:,:,:)*PRHODJ(:,:,:)/PTSTEP,4,'HINC_BU_RTH') + IF (LBUDGET_RC) CALL BUDGET (ZRCT(:,:,:)*PRHODJ(:,:,:)/PTSTEP,7,'HINC_BU_RRC') + IF (LBUDGET_RI) CALL BUDGET (ZRIT(:,:,:)*PRHODJ(:,:,:)/PTSTEP,9,'HINC_BU_RRI') + IF (LBUDGET_SV) THEN + CALL BUDGET (ZCCT(:,:,:)*PRHODJ(:,:,:)/PTSTEP,12+NSV_LIMA_NC,'HINC_BU_RSV') + CALL BUDGET (ZCIT(:,:,:)*PRHODJ(:,:,:)/PTSTEP,12+NSV_LIMA_NI,'HINC_BU_RSV') + END IF + END IF +! +PTHT(:,:,:) = ZTHT(:,:,:) +PRVT(:,:,:) = ZRVT(:,:,:) +PRCT(:,:,:) = ZRCT(:,:,:) +PCCT(:,:,:) = ZCCT(:,:,:) +PRIT(:,:,:) = ZRIT(:,:,:) +PCIT(:,:,:) = ZCIT(:,:,:) +PINT(:,:,:,:) = ZINT(:,:,:,:) +END IF +! +!------------------------------------------------------------------------------- +! +IF (LCOLD .AND. LNUCL .AND. LHHONI .AND. NMOD_CCN.GE.1) THEN + CALL LIMA_CCN_HOM_FREEZING (PRHODREF, PEXNREF, PPABST, PW_NU, & + ZTHT, ZRVT, ZRCT, ZRRT, ZRIT, ZRST, ZRGT, & + ZCCT, ZCRT, ZCIT, ZNFT, ZNHT ) +! +! Call budgets +! + IF (LBU_ENABLE) THEN + IF (LBUDGET_TH) CALL BUDGET (ZTHT(:,:,:)*PRHODJ(:,:,:)/PTSTEP, 4, 'HONH_BU_RTH') + IF (LBUDGET_RV) CALL BUDGET (ZRVT(:,:,:)*PRHODJ(:,:,:)/PTSTEP, 6, 'HONH_BU_RRV') + IF (LBUDGET_RI) CALL BUDGET (ZRIT(:,:,:)*PRHODJ(:,:,:)/PTSTEP, 9, 'HONH_BU_RRI') + IF (LBUDGET_SV) THEN + CALL BUDGET (ZCIT(:,:,:)*PRHODJ(:,:,:)/PTSTEP, 12+NSV_LIMA_NI, 'HONH_BU_RSV') + DO JL=1, NMOD_CCN + CALL BUDGET (ZNFT(:,:,:,JL)*PRHODJ(:,:,:)/PTSTEP,12+NSV_LIMA_CCN_FREE+JL-1,'HONH_BU_RSV') + END DO + END IF + END IF +! +PTHT(:,:,:) = ZTHT(:,:,:) +PRVT(:,:,:) = ZRVT(:,:,:) +PRIT(:,:,:) = ZRIT(:,:,:) +PCIT(:,:,:) = ZCIT(:,:,:) +PNHT(:,:,:) = ZNHT(:,:,:) +ENDIF +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_NUCLEATION_PROCS diff --git a/src/MNH/lima_phillips_ifn_nucleation.f90 b/src/MNH/lima_phillips_ifn_nucleation.f90 new file mode 100644 index 0000000000000000000000000000000000000000..053422c951156e2cdb883407ab4ca29c86b1930c --- /dev/null +++ b/src/MNH/lima_phillips_ifn_nucleation.f90 @@ -0,0 +1,499 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ######################################## + MODULE MODI_LIMA_PHILLIPS_IFN_NUCLEATION +! ######################################## +! +INTERFACE + SUBROUTINE LIMA_PHILLIPS_IFN_NUCLEATION (PTSTEP, & + PRHODREF, PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCIT, PNAT, PIFT, PINT, PNIT, & + P_TH_HIND, P_RI_HIND, P_CI_HIND, & + P_RC_HINC, P_CC_HINC ) +! +REAL, INTENT(IN) :: PTSTEP +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHT ! Theta at time t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRST ! Snow/aggregate m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRGT ! Graupel m.r. at t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCCT ! Cloud water conc. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCIT ! Cloud water conc. at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNAT ! CCN conc. used for immersion nucl. +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PIFT ! Free IFN conc. +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PINT ! Nucleated IFN conc. +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNIT ! Nucleated (by immersion) CCN conc. +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_TH_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_RI_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_CI_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_RC_HINC +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_CC_HINC +! +END SUBROUTINE LIMA_PHILLIPS_IFN_NUCLEATION +END INTERFACE +END MODULE MODI_LIMA_PHILLIPS_IFN_NUCLEATION +! +! ################################################################################# + SUBROUTINE LIMA_PHILLIPS_IFN_NUCLEATION (PTSTEP, & + PRHODREF, PEXNREF, PPABST, & + PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCIT, PNAT, PIFT, PINT, PNIT, & + P_TH_HIND, P_RI_HIND, P_CI_HIND, & + P_RC_HINC, P_CC_HINC ) +! ################################################################################# +!! +!! PURPOSE +!! ------- +!! The purpose of this routine is to compute the heterogeneous nucleation +!! following Phillips (2008) for the time-splitted version of LIMA +!! +!! +!!** METHOD +!! ------ +!! The parameterization of Phillips (2008) is based on observed nucleation +!! in the CFDC for a range of T and Si values. Phillips therefore defines a +!! reference activity spectrum, that is, for given T and Si values, the +!! reference concentration of primary ice crystals. +!! +!! The activation of IFN is closely related to their total surface. Thus, +!! the activable fraction of each IFN specie is determined by an integration +!! over the particle size distributions. +!! +!! Subroutine organisation : +!! +!! 1- Preliminary computations +!! 2- Check where computations are necessary, and pack variables +!! 3- Compute the saturation over water and ice +!! 4- Compute the reference activity spectrum +!! -> CALL LIMA_PHILLIPS_REF_SPECTRUM +!! Integrate over the size distributions to compute the IFN activable fraction +!! -> CALL LIMA_PHILLIPS_INTEG +!! 5- Heterogeneous nucleation of insoluble IFN +!! 6- Heterogeneous nucleation of coated IFN +!! 7- Unpack variables & deallocations +!! +!! +!! REFERENCE +!! --------- +!! +!! Phillips et al., 2008: An empirical parameterization of heterogeneous +!! ice nucleation for multiple chemical species of aerosols, J. Atmos. Sci. +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAMETERS, ONLY : JPHEXT, JPVEXT +USE MODD_CST, ONLY : XP00, XRD, XMV, XMD, XCPD, XCPV, XCL, XCI, & + XTT, XLSTT, XLVTT, XALPI, XBETAI, XGAMI, & + XALPW, XBETAW, XGAMW, XPI +USE MODD_PARAM_LIMA, ONLY : NMOD_IFN, NSPECIE, XFRAC, & + NMOD_CCN, NMOD_IMM, NIND_SPECIE, NINDICE_CCN_IMM, & + XDSI0, XRTMIN, XCTMIN, NPHILLIPS +USE MODD_PARAM_LIMA_COLD, ONLY : XMNU0 +! +USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV +USE MODI_LIMA_PHILLIPS_REF_SPECTRUM +USE MODI_LIMA_PHILLIPS_INTEG +! +USE MODD_BUDGET +USE MODI_BUDGET +USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NI, NSV_LIMA_IFN_FREE +! +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTHT ! Theta at time t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRIT ! Cloud ice m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRST ! Snow/aggregate m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRGT ! Graupel m.r. at t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCCT ! Cloud water conc. at t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCIT ! Cloud water conc. at t +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNAT ! CCN conc. used for immersion nucl. +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PIFT ! Free IFN conc. +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PINT ! Nucleated IFN conc. +REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNIT ! Nucleated (by immersion) CCN conc. +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_TH_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_RI_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_CI_HIND +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_RC_HINC +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: P_CC_HINC +! +! +!* 0.2 Declarations of local variables : +! +! +INTEGER :: IIB, IIE, IJB, IJE, IKB, IKE ! Physical domain +INTEGER :: JL, JMOD_CCN, JMOD_IFN, JSPECIE, JMOD_IMM ! Loop index +INTEGER :: INEGT ! Case number of sedimentation, nucleation, +! +LOGICAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & + :: GNEGT ! Test where to compute the nucleation +! +INTEGER, DIMENSION(SIZE(PRHODREF)) :: I1,I2,I3 ! Indexes for PACK replacement +! +REAL, DIMENSION(:), ALLOCATABLE :: ZRVT ! Water vapor m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRRT ! Rain water m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRIT ! Pristine ice m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRST ! Snow/aggregate m.r. at t +REAL, DIMENSION(:), ALLOCATABLE :: ZRGT ! Graupel/hail m.r. at t +! +REAL, DIMENSION(:), ALLOCATABLE :: ZCCT ! Cloud water conc. at t +! +REAL, DIMENSION(:,:), ALLOCATABLE :: ZNAT ! Cloud Cond. nuclei conc. source +REAL, DIMENSION(:,:), ALLOCATABLE :: ZIFT ! Free Ice nuclei conc. source +REAL, DIMENSION(:,:), ALLOCATABLE :: ZINT ! Nucleated Ice nuclei conc. source + !by Deposition/Contact +REAL, DIMENSION(:,:), ALLOCATABLE :: ZNIT ! Nucleated Ice nuclei conc. source + !by Immersion +! +REAL, DIMENSION(:), ALLOCATABLE & + :: ZRHODREF, & ! RHO Dry REFerence + ZRHODJ, & ! RHO times Jacobian + ZZT, & ! Temperature + ZPRES, & ! Pressure + ZEXNREF, & ! EXNer Pressure REFerence + ZZW, & ! Work array + ZZX, & ! Work array + ZZY, & ! Work array + ZLSFACT, & ! L_s/(Pi_ref*C_ph) + ZLVFACT, & ! L_v/(Pi_ref*C_ph) + ZLBDAC, & ! Slope parameter of the cloud droplet distr. + ZSI, & + ZSW, & + ZSI_W +! +REAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & + :: ZW, ZT ! work arrays +! +REAL, DIMENSION(:,:), ALLOCATABLE :: ZSI0, & ! Si threshold in H_X for X={DM,BC,O} + Z_FRAC_ACT ! Activable frac. of each AP species +REAL, DIMENSION(:), ALLOCATABLE :: ZTCELSIUS, ZZT_SI0_BC +! +!------------------------------------------------------------------------------- +! +! +!* 1. PRELIMINARY COMPUTATIONS +! ------------------------ +! +P_TH_HIND(:,:,:) = 0. +P_RI_HIND(:,:,:) = 0. +P_CI_HIND(:,:,:) = 0. +P_RC_HINC(:,:,:) = 0. +P_CC_HINC(:,:,:) = 0. +! +! Physical domain +! +IIB=1+JPHEXT +IIE=SIZE(PTHT,1) - JPHEXT +IJB=1+JPHEXT +IJE=SIZE(PTHT,2) - JPHEXT +IKB=1+JPVEXT +IKE=SIZE(PTHT,3) - JPVEXT +! +! Temperature +! +ZT(:,:,:) = PTHT(:,:,:) * ( PPABST(:,:,:)/XP00 ) ** (XRD/XCPD) +! +! Saturation over ice +! +ZW(:,:,:) = EXP( XALPI - XBETAI/ZT(:,:,:) - XGAMI*ALOG(ZT(:,:,:) ) ) +ZW(:,:,:) = PRVT(:,:,:)*( PPABST(:,:,:)-ZW(:,:,:) ) / ( (XMV/XMD) * ZW(:,:,:) ) +! +! +!------------------------------------------------------------------------------- +! +! +!* 2. COMPUTATIONS ONLY WHERE NECESSARY : PACK +! ---------------------------------------- +! +! +GNEGT(:,:,:) = .FALSE. +GNEGT(IIB:IIE,IJB:IJE,IKB:IKE) = ZT(IIB:IIE,IJB:IJE,IKB:IKE)<XTT-2.0 .AND. & + ZW(IIB:IIE,IJB:IJE,IKB:IKE)>0.95 +! +INEGT = COUNTJV( GNEGT(:,:,:),I1(:),I2(:),I3(:)) +! +IF (INEGT > 0) THEN +! + ALLOCATE(ZRVT(INEGT)) + ALLOCATE(ZRCT(INEGT)) + ALLOCATE(ZRRT(INEGT)) + ALLOCATE(ZRIT(INEGT)) + ALLOCATE(ZRST(INEGT)) + ALLOCATE(ZRGT(INEGT)) +! + ALLOCATE(ZCCT(INEGT)) +! + ALLOCATE(ZNAT(INEGT,NMOD_CCN)) + ALLOCATE(ZIFT(INEGT,NMOD_IFN)) + ALLOCATE(ZINT(INEGT,NMOD_IFN)) + ALLOCATE(ZNIT(INEGT,NMOD_IMM)) +! + ALLOCATE(ZRHODREF(INEGT)) + ALLOCATE(ZZT(INEGT)) + ALLOCATE(ZPRES(INEGT)) + ALLOCATE(ZEXNREF(INEGT)) +! + DO JL=1,INEGT + ZRVT(JL) = PRVT(I1(JL),I2(JL),I3(JL)) + ZRCT(JL) = PRCT(I1(JL),I2(JL),I3(JL)) + ZRRT(JL) = PRRT(I1(JL),I2(JL),I3(JL)) + ZRIT(JL) = PRIT(I1(JL),I2(JL),I3(JL)) + ZRST(JL) = PRST(I1(JL),I2(JL),I3(JL)) + ZRGT(JL) = PRGT(I1(JL),I2(JL),I3(JL)) +! + ZCCT(JL) = PCCT(I1(JL),I2(JL),I3(JL)) +! + DO JMOD_CCN = 1, NMOD_CCN + ZNAT(JL,JMOD_CCN) = PNAT(I1(JL),I2(JL),I3(JL),JMOD_CCN) + ENDDO + DO JMOD_IFN = 1, NMOD_IFN + ZIFT(JL,JMOD_IFN) = PIFT(I1(JL),I2(JL),I3(JL),JMOD_IFN) + ZINT(JL,JMOD_IFN) = PINT(I1(JL),I2(JL),I3(JL),JMOD_IFN) + ENDDO + DO JMOD_IMM = 1, NMOD_IMM + ZNIT(JL,JMOD_IMM) = PNIT(I1(JL),I2(JL),I3(JL),JMOD_IMM) + ENDDO + ZRHODREF(JL) = PRHODREF(I1(JL),I2(JL),I3(JL)) + ZZT(JL) = ZT(I1(JL),I2(JL),I3(JL)) + ZPRES(JL) = PPABST(I1(JL),I2(JL),I3(JL)) + ZEXNREF(JL) = PEXNREF(I1(JL),I2(JL),I3(JL)) + ENDDO +! +! PACK : done +! Prepare computations +! + ALLOCATE( ZLSFACT (INEGT) ) + ALLOCATE( ZLVFACT (INEGT) ) + ALLOCATE( ZSI (INEGT) ) + ALLOCATE( ZTCELSIUS (INEGT) ) + ALLOCATE( ZZT_SI0_BC (INEGT) ) + ALLOCATE( ZLBDAC (INEGT) ) + ALLOCATE( ZSI0 (INEGT,NSPECIE) ) + ALLOCATE( Z_FRAC_ACT (INEGT,NSPECIE) ) ; Z_FRAC_ACT(:,:) = 0.0 + ALLOCATE( ZSW (INEGT) ) + ALLOCATE( ZSI_W (INEGT) ) +! + ALLOCATE( ZZW (INEGT) ) ; ZZW(:) = 0.0 + ALLOCATE( ZZX (INEGT) ) ; ZZX(:) = 0.0 + ALLOCATE( ZZY (INEGT) ) ; ZZY(:) = 0.0 +! +! +!------------------------------------------------------------------------------- +! +! +!* 3. COMPUTE THE SATURATION OVER WATER AND ICE +! ----------------------------------------- +! +! + ZTCELSIUS(:) = ZZT(:)-XTT ! T [°C] + ZZW(:) = ZEXNREF(:)*( XCPD+XCPV*ZRVT(:)+XCL*(ZRCT(:)+ZRRT(:)) & + +XCI*(ZRIT(:)+ZRST(:)+ZRGT(:)) ) + ZLSFACT(:) = (XLSTT+(XCPV-XCI)*ZTCELSIUS(:))/ZZW(:) ! L_s/(Pi_ref*C_ph) + ZLVFACT(:) = (XLVTT+(XCPV-XCL)*ZTCELSIUS(:))/ZZW(:) ! L_v/(Pi_ref*C_ph) +! + ZZW(:) = EXP( XALPI - XBETAI/ZZT(:) - XGAMI*ALOG(ZZT(:) ) ) ! es_i + ZSI(:) = ZRVT(:)*(ZPRES(:)-ZZW(:))/((XMV/XMD)*ZZW(:)) ! Saturation over ice +! + ZZY(:) = EXP( XALPW - XBETAW/ZZT(:) - XGAMW*ALOG(ZZT(:) ) ) ! es_w + ZSW(:) = ZRVT(:)*(ZPRES(:)-ZZY(:))/((XMV/XMD)*ZZY(:)) ! Saturation over water +! + ZSI_W(:)= ZZY(:)/ZZW(:) ! Saturation over ice at water saturation: es_w/es_i +! +! Saturation parameters for H_X, with X={Dust/Metallic (2 modes), Black Carbon, Organic} +! + ZSI0(:,1) = 1.0 + 10.0**( -1.0261 + 3.1656E-3* ZTCELSIUS(:) & + + 5.3938E-4*(ZTCELSIUS(:)**2) & + + 8.2584E-6*(ZTCELSIUS(:)**3) ) ! with T [°C] + ZSI0(:,2) = ZSI0(:,1) ! DM2 = DM1 + ZSI0(:,3) = 0.0 ! BC + ZZT_SI0_BC(:) = MAX( 198.0, MIN( 239.0,ZZT(:) ) ) + ZSI0(:,3) = (-3.118E-5*ZZT_SI0_BC(:)+1.085E-2)*ZZT_SI0_BC(:)+0.5652 - XDSI0(3) + IF (NPHILLIPS == 8) THEN + ZSI0(:,4) = ZSI0(:,3) ! O = BC + ELSE IF (NPHILLIPS == 13) THEN + ZSI0(:,4) = 1.15 ! BIO + END IF +! +! +!------------------------------------------------------------------------------- +! +! +!* 4. COMPUTE THE ACTIVABLE FRACTION OF EACH IFN SPECIE +! ------------------------------------------------- +! +! +! Computation of the reference activity spectrum ( ZZY = N_{IN,1,*} ) +! + CALL LIMA_PHILLIPS_REF_SPECTRUM(ZZT, ZSI, ZSI_W, ZZY) +! +! For each aerosol species (DM1, DM2, BC, O), compute the fraction that may be activated +! Z_FRAC_ACT(INEGT,NSPECIE) = fraction of each species that may be activated +! + CALL LIMA_PHILLIPS_INTEG(ZZT, ZSI, ZSI0, ZSW, ZZY, Z_FRAC_ACT) +! +! +!------------------------------------------------------------------------------- +! +! +!* 5. COMPUTE THE HETEROGENEOUS NUCLEATION OF INSOLUBLE IFN +! ----------------------------------------------------- +! +! +! + DO JMOD_IFN = 1,NMOD_IFN ! IFN modes + ZZX(:)=0. + DO JSPECIE = 1, NSPECIE ! Each IFN mode is mixed with DM1, DM2, BC, O + ZZX(:)=ZZX(:)+XFRAC(JSPECIE,JMOD_IFN)*(ZIFT(:,JMOD_IFN)+ZINT(:,JMOD_IFN))* & + Z_FRAC_ACT(:,JSPECIE) + END DO +! Now : ZZX(:) = number conc. of activable AP. +! Activated AP at this time step = activable AP - already activated AP + ZZX(:) = MIN( ZIFT(:,JMOD_IFN), MAX( (ZZX(:)-ZINT(:,JMOD_IFN)),0.0 )) + ZZW(:) = MIN( XMNU0*ZZX(:), ZRVT(:) ) +! Now : ZZX(:) = number conc. of AP activated at this time step (#/kg) from IFN mode JMOD_IFN +! Now : ZZW(:) = mmr of ice nucleated at this time step (kg/kg) from IFN mode JMOD_IFN +! +! Update the concentrations and MMR +! + ZW(:,:,:) = UNPACK( ZZX(:), MASK=GNEGT(:,:,:), FIELD=0. ) + PIFT(:,:,:,JMOD_IFN) = PIFT(:,:,:,JMOD_IFN) - ZW(:,:,:) + PINT(:,:,:,JMOD_IFN) = PINT(:,:,:,JMOD_IFN) + ZW(:,:,:) +! + P_CI_HIND(:,:,:) = P_CI_HIND(:,:,:) + ZW(:,:,:) + PCIT(:,:,:) = PCIT(:,:,:) + ZW(:,:,:) +! + ZW(:,:,:) = UNPACK( ZZW(:), MASK=GNEGT(:,:,:), FIELD=0. ) + P_RI_HIND(:,:,:) = P_RI_HIND(:,:,:) + ZW(:,:,:) + PRVT(:,:,:) = PRVT(:,:,:) - ZW(:,:,:) + PRIT(:,:,:) = PRIT(:,:,:) + ZW(:,:,:) +! + P_TH_HIND(:,:,:) = UNPACK( ZZW(:)*ZLSFACT(:), MASK=GNEGT(:,:,:), FIELD=0. ) + PTHT(:,:,:) = PTHT(:,:,:) + P_TH_HIND(:,:,:) + END DO +! +! +!------------------------------------------------------------------------------- +! +! +!* 6. COMPUTE THE HETEROGENEOUS NUCLEATION OF COATED IFN +! -------------------------------------------------- +! +! +! Heterogeneous nucleation by immersion of the activated CCN +! Currently, we represent coated IFN as a pure aerosol type (NIND_SPECIE) +! +! + DO JMOD_IMM = 1,NMOD_IMM ! Coated IFN modes + JMOD_CCN = NINDICE_CCN_IMM(JMOD_IMM) ! Corresponding CCN mode + IF (JMOD_CCN .GT. 0) THEN +! +! OLD LIMA : Compute the appropriate mean diameter and sigma +! XMDIAM_IMM = MIN( XMDIAM_IFN(NIND_SPECIE) , XR_MEAN_CCN(JMOD_CCN)*2. ) +! XSIGMA_IMM = MIN( XSIGMA_IFN(JSPECIE) , EXP(XLOGSIG_CCN(JMOD_CCN)) ) +! + ZZW(:) = MIN( ZCCT(:) , ZNAT(:,JMOD_CCN) ) + ZZX(:)= ( ZZW(:)+ZNIT(:,JMOD_IMM) ) * Z_FRAC_ACT(:,NIND_SPECIE) +! Now : ZZX(:) = number of activable AP. +! Activated AP at this time step = activable AP - already activated AP + ZZX(:) = MIN( ZZW(:), MAX( (ZZX(:)-ZNIT(:,JMOD_IMM)),0.0 ) ) + ZZY(:) = MIN( XMNU0*ZZX(:) , ZRVT(:), ZRCT(:) ) +! +! Update the concentrations and MMR +! + ZW(:,:,:) = UNPACK( ZZX(:), MASK=GNEGT(:,:,:), FIELD=0. ) + PNIT(:,:,:,JMOD_IMM) = PNIT(:,:,:,JMOD_IMM) + ZW(:,:,:) + PNAT(:,:,:,JMOD_CCN) = PNAT(:,:,:,JMOD_CCN) - ZW(:,:,:) +! + P_CC_HINC(:,:,:) = P_CC_HINC(:,:,:) - ZW(:,:,:) + PCCT(:,:,:) = PCCT(:,:,:) - ZW(:,:,:) + PCIT(:,:,:) = PCIT(:,:,:) + ZW(:,:,:) +! + ZW(:,:,:) = UNPACK( ZZY(:), MASK=GNEGT(:,:,:), FIELD=0. ) + P_RC_HINC(:,:,:) = P_RC_HINC(:,:,:) - ZW(:,:,:) + PRCT(:,:,:) = PRCT(:,:,:) - ZW(:,:,:) + PRIT(:,:,:) = PRIT(:,:,:) + ZW(:,:,:) + PTHT(:,:,:) = PTHT(:,:,:) + UNPACK( ZZY(:)*ZLSFACT(:), MASK=GNEGT(:,:,:), FIELD=0. ) + END IF + END DO +! +!------------------------------------------------------------------------------- +! +! +!* 7. CLEAN +! ----- +! +! + DEALLOCATE(ZRVT) + DEALLOCATE(ZRCT) + DEALLOCATE(ZRRT) + DEALLOCATE(ZRIT) + DEALLOCATE(ZRST) + DEALLOCATE(ZRGT) + DEALLOCATE(ZCCT) + DEALLOCATE(ZNAT) + DEALLOCATE(ZIFT) + DEALLOCATE(ZINT) + DEALLOCATE(ZNIT) + DEALLOCATE(ZRHODREF) + DEALLOCATE(ZZT) + DEALLOCATE(ZPRES) + DEALLOCATE(ZEXNREF) + DEALLOCATE(ZLSFACT) + DEALLOCATE(ZLVFACT) + DEALLOCATE(ZSI) + DEALLOCATE(ZTCELSIUS) + DEALLOCATE(ZZT_SI0_BC) + DEALLOCATE(ZLBDAC) + DEALLOCATE(ZSI0) + DEALLOCATE(Z_FRAC_ACT) + DEALLOCATE(ZSW) + DEALLOCATE(ZZW) + DEALLOCATE(ZZX) + DEALLOCATE(ZZY) + DEALLOCATE(ZSI_W) +! +END IF ! INEGT > 0 +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_PHILLIPS_IFN_NUCLEATION diff --git a/src/MNH/lima_rain_accr_snow.f90 b/src/MNH/lima_rain_accr_snow.f90 new file mode 100644 index 0000000000000000000000000000000000000000..18a62a528f026cff2fb57a908ca4eaced767b442 --- /dev/null +++ b/src/MNH/lima_rain_accr_snow.f90 @@ -0,0 +1,317 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_RAIN_ACCR_SNOW +! ################################# +! +INTERFACE + SUBROUTINE LIMA_RAIN_ACCR_SNOW (PTSTEP, LDCOMPUTE, & + PRHODREF, PT, & + PRRT, PCRT, PRST, PLBDR, PLBDS, PLVFACT, PLSFACT, & + P_TH_ACC, P_RR_ACC, P_CR_ACC, P_RS_ACC, P_RG_ACC, & + PA_TH, PA_RR, PA_CR, PA_RS, PA_RG ) +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! +REAL, DIMENSION(:), INTENT(IN) :: PT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PRST ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDS ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_ACC +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +! +END SUBROUTINE LIMA_RAIN_ACCR_SNOW +END INTERFACE +END MODULE MODI_LIMA_RAIN_ACCR_SNOW +! +! ################################################################################### + SUBROUTINE LIMA_RAIN_ACCR_SNOW (PTSTEP, LDCOMPUTE, & + PRHODREF, PT, & + PRRT, PCRT, PRST, PLBDR, PLBDS, PLVFACT, PLSFACT, & + P_TH_ACC, P_RR_ACC, P_CR_ACC, P_RS_ACC, P_RG_ACC, & + PA_TH, PA_RR, PA_CR, PA_RS, PA_RG ) +! ################################################################################### +! +!! PURPOSE +!! ------- +!! Compute the rain drops accretion on aggregates +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XTT +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCEXVT +USE MODD_PARAM_LIMA_COLD, ONLY : XBS, XCXS +USE MODD_PARAM_LIMA_MIXED, ONLY : NACCLBDAS, XACCINTP1S, XACCINTP2S, & + NACCLBDAR, XACCINTP1R, XACCINTP2R, & + XKER_RACCSS, XKER_RACCS, XKER_SACCRG, & + XFRACCSS, XLBRACCS1, XLBRACCS2, XLBRACCS3, & + XFSACCRG, XLBSACCR1, XLBSACCR2, XLBSACCR3 +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! +REAL, DIMENSION(:), INTENT(IN) :: PT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PRST ! Cloud water C. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDS ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_ACC +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +! +!* 0.2 Declarations of local variables : +! +LOGICAL, DIMENSION(SIZE(PRRT)) :: GACC +! +REAL, DIMENSION(SIZE(PRRT)) :: Z1, Z2, Z3, Z4 +REAL, DIMENSION(SIZE(PRRT)) :: ZZW1, ZZW2, ZZW3, ZZW4, ZZW5 +! +INTEGER, DIMENSION(SIZE(PRRT)) :: IVEC1,IVEC2 ! Vectors of indices +REAL, DIMENSION(SIZE(PRRT)) :: ZVEC1,ZVEC2,ZVEC3 ! Work vectors +! +!------------------------------------------------------------------------------- +! +! +P_TH_ACC(:) = 0. +P_RR_ACC(:) = 0. +P_CR_ACC(:) = 0. +P_RS_ACC(:) = 0. +P_RG_ACC(:) = 0. +! +ZZW1(:) = 0. +ZZW2(:) = 0. +ZZW3(:) = 0. +ZZW4(:) = 0. +ZZW5(:) = 0. +! +IVEC1(:) = 0 +IVEC2(:) = 0 +ZVEC1(:) = 0. +ZVEC2(:) = 0. +ZVEC3(:) = 0. +! +!* Cloud droplet riming of the aggregates +! ------------------------------------------- +! +! +GACC(:) = .False. +GACC(:) = (PRRT(:)>XRTMIN(3)) .AND. (PRST(:)>XRTMIN(5)) .AND. (PT(:)<XTT) .AND. LDCOMPUTE(:) +! +WHERE( GACC ) +! +! 1.3.1 select the (ZLBDAS,ZLBDAR) couplet + ! + ZVEC1(:) = MAX(MIN(PLBDS(:),5.E5),5.E1) + ZVEC2(:) = PLBDR(:) +! +! 1.3.2 find the next lower indice for the ZLBDAS and for the ZLBDAR +! in the geometrical set of (Lbda_s,Lbda_r) couplet use to +! tabulate the RACCSS-kernel +! + ZVEC1(:) = MAX( 1.0001, MIN( FLOAT(NACCLBDAS)-0.0001, & + XACCINTP1S * LOG( ZVEC1(:) ) + XACCINTP2S ) ) + IVEC1(:) = INT( ZVEC1(:) ) + ZVEC1(:) = ZVEC1(:) - FLOAT( IVEC1(:) ) +! + ZVEC2(:) = MAX( 1.0001, MIN( FLOAT(NACCLBDAR)-0.0001, & + XACCINTP1R * LOG( ZVEC2(:) ) + XACCINTP2R ) ) + IVEC2(:) = INT( ZVEC2(:) ) + ZVEC2(:) = ZVEC2(:) - FLOAT( IVEC2(:) ) +! +! 1.3.3 perform the bilinear interpolation of the normalized +! RACCSS-kernel : for small rain drops transformed into snow + ! + Z1(:) = GET_XKER_RACCSS(IVEC1(:)+1,IVEC2(:)+1) + Z2(:) = GET_XKER_RACCSS(IVEC1(:)+1,IVEC2(:) ) + Z3(:) = GET_XKER_RACCSS(IVEC1(:) ,IVEC2(:)+1) + Z4(:) = GET_XKER_RACCSS(IVEC1(:) ,IVEC2(:) ) + ZVEC3(:) = ( Z1(:)* ZVEC2(:) & + - Z2(:)*(ZVEC2(:) - 1.0) ) & + * ZVEC1(:) & + - ( Z3(:)* ZVEC2(:) & + - Z4(:)*(ZVEC2(:) - 1.0) ) & + * (ZVEC1(:) - 1.0) + ZZW1(:) = ZVEC3(:) +! +! 1.3.4b perform the bilinear interpolation of the normalized +! RACCS-kernel : total frozen rain drops +! + Z1(:) = GET_XKER_RACCS(IVEC1(:)+1,IVEC2(:)+1) + Z2(:) = GET_XKER_RACCS(IVEC1(:)+1,IVEC2(:) ) + Z3(:) = GET_XKER_RACCS(IVEC1(:) ,IVEC2(:)+1) + Z4(:) = GET_XKER_RACCS(IVEC1(:) ,IVEC2(:) ) + ZVEC3(:) = ( Z1(:)* ZVEC2(:) & + - Z2(:)*(ZVEC2(:) - 1.0) ) & + * ZVEC1(:) & + - ( Z3(:)* ZVEC2(:) & + - Z4(:)*(ZVEC2(:) - 1.0) ) & + * (ZVEC1(:) - 1.0) + ZZW2(:) = ZVEC3(:) +! +! Correction of ZZW1 to ensure that ZZW1 <= ZZW2 +! ie coll. of small drops <= coll. of all drops +! + ZZW1(:) = MIN(ZZW1(:),ZZW2(:)) +! +! 1.3.5 perform the bilinear interpolation of the normalized +! SACCRG-kernel : snow transformed into graupel +! + Z1(:) = GET_XKER_SACCRG(IVEC2(:)+1,IVEC1(:)+1) + Z2(:) = GET_XKER_SACCRG(IVEC2(:)+1,IVEC1(:) ) + Z3(:) = GET_XKER_SACCRG(IVEC2(:) ,IVEC1(:)+1) + Z4(:) = GET_XKER_SACCRG(IVEC2(:) ,IVEC1(:) ) + ZVEC3(:) = ( Z1(:)* ZVEC1(:) & + - Z2(:)*(ZVEC1(:) - 1.0) ) & + * ZVEC2(:) & + - ( Z3(:)* ZVEC1(:) & + - Z4(:)*(ZVEC1(:) - 1.0) ) & + * (ZVEC2(:) - 1.0) + ZZW3(:) = ZVEC3(:) +! +! 1.3.4 raindrop accretion on the small sized aggregates +! +! BVIE manque PCRT ??????????????????????????????????? +! ZZW4(:) = & !! coef of RRACCS and RRACCS + ZZW4(:) = PCRT(:) & !! coef of RRACCS and RRACCS + * XFRACCSS *( PLBDS(:)**XCXS )*( PRHODREF(:)**(-XCEXVT-1.) ) & + *( XLBRACCS1/( PLBDS(:)**2 ) + & + XLBRACCS2/( PLBDS(:) * PLBDR(:) ) + & + XLBRACCS3/( PLBDR(:)**2 ) ) / PLBDR(:)**3 + +! ZRRS(:) = ZRRS(:) - ZZW1(:,4) +! ZRSS(:) = ZRSS(:) + ZZW1(:,4) +! ZTHS(:) = ZTHS(:) + ZZW1(:,4)*(ZLSFACT(:)-ZLVFACT(:)) ! f(L_f*(RRACCSS)) +! +! ZCRS(:) = MAX( ZCRS(:)-ZZW1(:,4)*(ZCRT(:)/ZRRT(:)),0.0 ) ! Lambda_r**3 +! +! 1.3.6 raindrop accretion-conversion of the large sized aggregates +! into graupeln +! + ZZW5(:) = XFSACCRG*ZZW3(:) * & ! RSACCRG + ( PLBDS(:)**(XCXS-XBS) )*( PRHODREF(:)**(-XCEXVT-1.) ) & + *( XLBSACCR1/((PLBDR(:)**2) ) + & + XLBSACCR2/( PLBDR(:) * PLBDS(:) ) + & + XLBSACCR3/( (PLBDS(:)**2)) ) + ! +! P_RR_ACC(:) = - ZZW4(:) * ZZW1(:) ! RRACCSS +! P_CR_ACC(:) = P_RR_ACC(:) * PCRT(:)/PRRT(:) ! Lambda_r**3 +! P_RS_ACC(:) = - P_RR_ACC(:) + ! +! P_RR_ACC(:) = P_RR_ACC(:) - ( ZZW2(:)-P_RS_ACC(:) ) +! P_CR_ACC(:) = P_CR_ACC(:) - ( ZZW2(:)-P_RS_ACC(:) ) * PCRT(:)/PRRT(:) ! Lambda_r**3 +! P_RS_ACC(:) = P_RS_ACC(:) - ZZW5(:) +! P_RG_ACC(:) = ( ZZW2(:)-P_RS_ACC(:) ) + ZZW5(:) + ! + P_RR_ACC(:) = - ZZW4(:) * ZZW2(:) + P_CR_ACC(:) = P_RR_ACC(:) * PCRT(:)/PRRT(:) + P_RS_ACC(:) = ZZW4(:) * ZZW1(:) - ZZW5(:) + P_RG_ACC(:) = ZZW4(:) * ( ZZW2(:) - ZZW1(:) ) + ZZW5(:) + P_TH_ACC(:) = - P_RR_ACC(:) * (PLSFACT(:)-PLVFACT(:)) + ! +END WHERE +! +! +PA_RR(:) = PA_RR(:) + P_RR_ACC(:) +PA_CR(:) = PA_CR(:) + P_CR_ACC(:) +PA_RS(:) = PA_RS(:) + P_RS_ACC(:) +PA_RG(:) = PA_RG(:) + P_RG_ACC(:) +PA_TH(:) = PA_TH(:) + P_TH_ACC(:) +! +!------------------------------------------------------------------------------- +! +CONTAINS + FUNCTION GET_XKER_RACCSS(I1,I2) RESULT(RET) + INTEGER, DIMENSION(:) :: I1 + INTEGER, DIMENSION(:) :: I2 + REAL, DIMENSION(SIZE(I1)) :: RET + ! + INTEGER I + ! + DO I=1,SIZE(I1) + RET(I) = XKER_RACCSS(MAX(MIN(I1(I),SIZE(XKER_RACCSS,1)),1),MAX(MIN(I2(I),SIZE(XKER_RACCSS,2)),1)) + END DO + END FUNCTION GET_XKER_RACCSS +! +!------------------------------------------------------------------------------- +! + FUNCTION GET_XKER_RACCS(I1,I2) RESULT(RET) + INTEGER, DIMENSION(:) :: I1 + INTEGER, DIMENSION(:) :: I2 + REAL, DIMENSION(SIZE(I1)) :: RET + ! + INTEGER I + ! + DO I=1,SIZE(I1) + RET(I) = XKER_RACCS(MAX(MIN(I1(I),SIZE(XKER_RACCS,1)),1),MAX(MIN(I2(I),SIZE(XKER_RACCS,2)),1)) + END DO + END FUNCTION GET_XKER_RACCS +! +!------------------------------------------------------------------------------- +! + FUNCTION GET_XKER_SACCRG(I1,I2) RESULT(RET) + INTEGER, DIMENSION(:) :: I1 + INTEGER, DIMENSION(:) :: I2 + REAL, DIMENSION(SIZE(I1)) :: RET + ! + INTEGER I + ! + DO I=1,SIZE(I1) + RET(I) = XKER_SACCRG(MAX(MIN(I1(I),SIZE(XKER_SACCRG,1)),1),MAX(MIN(I2(I),SIZE(XKER_SACCRG,2)),1)) + END DO + END FUNCTION GET_XKER_SACCRG +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_RAIN_ACCR_SNOW diff --git a/src/MNH/lima_rain_evaporation.f90 b/src/MNH/lima_rain_evaporation.f90 new file mode 100644 index 0000000000000000000000000000000000000000..9762a2e2607643f7aba69497a6b4934eb6594ea9 --- /dev/null +++ b/src/MNH/lima_rain_evaporation.f90 @@ -0,0 +1,161 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ########################## + MODULE MODI_LIMA_RAIN_EVAPORATION +! ########################## +! +INTERFACE + SUBROUTINE LIMA_RAIN_EVAPORATION (PTSTEP, LDCOMPUTE, & + PRHODREF, PT, PLV, PLVFACT, PEVSAT, PRVSAT, & + PRVT, PRCT, PRRT, PLBDR, & + P_TH_EVAP, P_RR_EVAP, & + PA_RV, PA_RR, PA_TH, & + PEVAP3D ) +! +REAL, INTENT(IN) :: PTSTEP ! Time step +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:), INTENT(IN) :: PT ! Temperature +REAL, DIMENSION(:), INTENT(IN) :: PLV ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PEVSAT ! +REAL, DIMENSION(:), INTENT(IN) :: PRVSAT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! Lambda(rain) +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_EVAP +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_EVAP +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RV +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +! +REAL, DIMENSION(:), INTENT(INOUT) :: PEVAP3D ! Rain evap profile +! +END SUBROUTINE LIMA_RAIN_EVAPORATION +END INTERFACE +END MODULE MODI_LIMA_RAIN_EVAPORATION +! ############################################################################### + SUBROUTINE LIMA_RAIN_EVAPORATION (PTSTEP, LDCOMPUTE, & + PRHODREF, PT, PLV, PLVFACT, PEVSAT, PRVSAT, & + PRVT, PRCT, PRRT, PLBDR, & + P_TH_EVAP, P_RR_EVAP, & + PA_RV, PA_RR, PA_TH, & + PEVAP3D ) +! ############################################################################### +! +!! +!! PURPOSE +!! ------- +!! The purpose of this routine is to compute the raindrop evaporation +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XRHOLW, XRV +USE MODD_PARAM_LIMA, ONLY : XRTMIN +USE MODD_PARAM_LIMA_WARM, ONLY : X0EVAR, XEX0EVAR, X1EVAR, XEX2EVAR, XEX1EVAR, XTHCO, XDIVA +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP ! Time step +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:), INTENT(IN) :: PT ! Temperature +REAL, DIMENSION(:), INTENT(IN) :: PLV ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PEVSAT ! +REAL, DIMENSION(:), INTENT(IN) :: PRVSAT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! Water vapor m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! Lambda(rain) +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_EVAP +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_EVAP +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RV +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +! +REAL, DIMENSION(:), INTENT(INOUT) :: PEVAP3D ! Rain evap profile +! +!* 0.1 Declarations of local variables : +! +! +LOGICAL, DIMENSION(SIZE(PRHODREF)) :: GEVAP +REAL, DIMENSION(SIZE(PRHODREF)) :: ZZW1, ZZW2 +! +!------------------------------------------------------------------------------- +! +! +!* 1. PREPARE COMPUTATIONS - PACK +! --------------------------- +! +P_TH_EVAP(:) = 0. +P_RR_EVAP(:) = 0. +! +GEVAP(:) = .FALSE. +GEVAP(:) = LDCOMPUTE(:) .AND. & + PRRT(:)>XRTMIN(3) .AND. & + PRVT(:)<PRVSAT(:) +! +WHERE ( GEVAP ) +! +!------------------------------------------------------------------------------- +! +! +!* 2. compute the evaporation of rain drops +! ---------------------------------------- +! +! + ZZW1(:) = MAX((1.0 - PRVT(:)/PRVSAT(:)),0.0) ! Subsaturation +! +! Compute the function G(T) +! + ZZW2(:) = 1. / ( XRHOLW*((((PLV(:)/PT(:))**2)/(XTHCO*XRV)) + & ! G + (XRV*PT(:))/(XDIVA*PEVSAT(:)))) +! +! Compute the evaporation tendency +! + ZZW2(:) = ZZW2(:) * ZZW1(:) * PRRT(:) * & + (X0EVAR * PLBDR(:)**XEX0EVAR + X1EVAR * PRHODREF(:)**XEX2EVAR * PLBDR(:)**XEX1EVAR) + ZZW2(:) = MAX(ZZW2(:),0.0) +! + P_RR_EVAP(:) = - ZZW2(:) + P_TH_EVAP(:) = P_RR_EVAP(:) * PLVFACT(:) + PEVAP3D(:) = - P_RR_EVAP(:) +! +PA_TH(:) = PA_TH(:) + P_TH_EVAP(:) +PA_RV(:) = PA_RV(:) - P_RR_EVAP(:) +PA_RR(:) = PA_RR(:) + P_RR_EVAP(:) +END WHERE +! +!----------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_RAIN_EVAPORATION diff --git a/src/MNH/lima_rain_freezing.f90 b/src/MNH/lima_rain_freezing.f90 new file mode 100644 index 0000000000000000000000000000000000000000..d09fc393ac6bc796a4af57a2f14cd7bbaa5f89dc --- /dev/null +++ b/src/MNH/lima_rain_freezing.f90 @@ -0,0 +1,157 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################# + MODULE MODI_LIMA_RAIN_FREEZING +! ################################# +! +INTERFACE + SUBROUTINE LIMA_RAIN_FREEZING (LDCOMPUTE, & + PRHODREF, PT, PLVFACT, PLSFACT, & + PRRT, PCRT, PRIT, PCIT, PLBDR, & + P_TH_CFRZ, P_RR_CFRZ, P_CR_CFRZ, P_RI_CFRZ, P_CI_CFRZ, & + PA_TH, PA_RR, PA_CR, PA_RI, PA_CI, PA_RG ) +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +REAL, DIMENSION(:), INTENT(IN) :: PT ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CFRZ +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +! +END SUBROUTINE LIMA_RAIN_FREEZING +END INTERFACE +END MODULE MODI_LIMA_RAIN_FREEZING +! +! ####################################################################################### + SUBROUTINE LIMA_RAIN_FREEZING (LDCOMPUTE, & + PRHODREF, PT, PLVFACT, PLSFACT, & + PRRT, PCRT, PRIT, PCIT, PLBDR, & + P_TH_CFRZ, P_RR_CFRZ, P_CR_CFRZ, P_RI_CFRZ, P_CI_CFRZ, & + PA_TH, PA_RR, PA_CR, PA_RI, PA_CI, PA_RG ) +! ####################################################################################### +! +!! PURPOSE +!! ------- +!! Compute the rain freezing by contact with an ice crystal +!! +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XTT +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCEXVT +USE MODD_PARAM_LIMA_MIXED, ONLY : XICFRR, XEXICFRR, XRCFRI, XEXRCFRI +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! Reference Exner function +REAL, DIMENSION(:), INTENT(IN) :: PT ! +REAL, DIMENSION(:), INTENT(IN) :: PLVFACT ! +REAL, DIMENSION(:), INTENT(IN) :: PLSFACT ! +! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! +REAL, DIMENSION(:), INTENT(IN) :: PLBDR ! +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CFRZ +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PRRT)) :: ZW1, ZW2 ! work arrays +! +!------------------------------------------------------------------------------- +! +! +!* 1. PRELIMINARY COMPUTATIONS +! ------------------------ +! +! +P_TH_CFRZ(:)=0. +P_RR_CFRZ(:)=0. +P_CR_CFRZ(:)=0. +P_RI_CFRZ(:)=0. +P_CI_CFRZ(:)=0. +! +ZW1(:)=0. +ZW2(:)=0. +! +WHERE( (PRIT(:)>XRTMIN(4)) .AND. (PRRT(:)>XRTMIN(3)) .AND. (PT(:)<XTT) .AND. LDCOMPUTE(:) ) +! + ZW1(:) = XICFRR * PRIT(:) * PCRT(:) & ! RICFRRG + * PLBDR(:)**XEXICFRR & + * PRHODREF(:)**(-XCEXVT-1.0) +! + ZW2(:) = XRCFRI * PCIT(:) * PCRT(:) & ! RRCFRIG + * PLBDR(:)**XEXRCFRI & + * PRHODREF(:)**(-XCEXVT-1.0) +! + P_RR_CFRZ(:) = - ZW2(:) + P_CR_CFRZ(:) = - ZW2(:) * (PCRT(:)/PRRT(:)) + P_RI_CFRZ(:) = - ZW1(:) + P_CI_CFRZ(:) = - ZW1(:) * (PCIT(:)/PRIT(:)) + P_TH_CFRZ(:) = - P_RR_CFRZ(:) * (PLSFACT(:)-PLVFACT(:)) +! +END WHERE +! +PA_TH(:) = PA_TH(:) + P_TH_CFRZ(:) +PA_RR(:) = PA_RR(:) + P_RR_CFRZ(:) +PA_CR(:) = PA_CR(:) + P_CR_CFRZ(:) +PA_RI(:) = PA_RI(:) + P_RI_CFRZ(:) +PA_CI(:) = PA_CI(:) + P_CI_CFRZ(:) +PA_RG(:) = PA_RG(:) - P_RR_CFRZ(:) - P_RI_CFRZ(:) +! +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_RAIN_FREEZING diff --git a/src/MNH/lima_read_xker_gweth.f90 b/src/MNH/lima_read_xker_gweth.f90 new file mode 100644 index 0000000000000000000000000000000000000000..25a567ec83399fb73d1774df9bacf5d879b67240 --- /dev/null +++ b/src/MNH/lima_read_xker_gweth.f90 @@ -0,0 +1,1737 @@ +!MNH_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +!----------------------------------------------------------------- +!--------------- special set of characters for RCS information +!----------------------------------------------------------------- +! $Source$ $Revision$ +! MASDEV4_7 microph 2006/05/18 13:07:25 +!----------------------------------------------------------------- +! ########################### + MODULE MODI_LIMA_READ_XKER_GWETH +! ########################### +! +INTERFACE + SUBROUTINE LIMA_READ_XKER_GWETH (KWETLBDAH,KWETLBDAG,KND, & + PALPHAH,PNUH,PALPHAG,PNUG,PEHG,PBG,PCH,PDH,PCG,PDG, & + PWETLBDAH_MAX,PWETLBDAG_MAX,PWETLBDAH_MIN,PWETLBDAG_MIN, & + PFDINFTY,PKER_GWETH ) +! +INTEGER, INTENT(OUT) :: KND,KWETLBDAH,KWETLBDAG +REAL, INTENT(OUT) :: PALPHAH +REAL, INTENT(OUT) :: PNUH +REAL, INTENT(OUT) :: PALPHAG +REAL, INTENT(OUT) :: PNUG +REAL, INTENT(OUT) :: PEHG +REAL, INTENT(OUT) :: PBG +REAL, INTENT(OUT) :: PCH +REAL, INTENT(OUT) :: PDH +REAL, INTENT(OUT) :: PCG +REAL, INTENT(OUT) :: PDG +REAL, INTENT(OUT) :: PWETLBDAH_MAX +REAL, INTENT(OUT) :: PWETLBDAG_MAX +REAL, INTENT(OUT) :: PWETLBDAH_MIN +REAL, INTENT(OUT) :: PWETLBDAG_MIN +REAL, INTENT(OUT) :: PFDINFTY +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_GWETH +! +END SUBROUTINE LIMA_READ_XKER_GWETH +! +END INTERFACE +! +END MODULE MODI_LIMA_READ_XKER_GWETH +! ######################################################################## + SUBROUTINE LIMA_READ_XKER_GWETH (KWETLBDAH,KWETLBDAG,KND, & + PALPHAH,PNUH,PALPHAG,PNUG,PEHG,PBG,PCH,PDH,PCG,PDG, & + PWETLBDAH_MAX,PWETLBDAG_MAX,PWETLBDAH_MIN,PWETLBDAG_MIN, & + PFDINFTY,PKER_GWETH ) +! ######################################################################## +! +!!**** * * - initialize the kernels for the graupel-hail wet growth process +!! +!! PURPOSE +!! ------- +!! The purpose of this routine is to initialize the kernels PKER_GWETH +!! prepared from a previous run of the routine INI_RAIN_ICE. The reading +!! of the kernels is optional after checking for the dimensions of the +!! arrays. +!! +!!** METHOD +!! ------ +!! +!! +!! EXTERNAL +!! -------- +!! None +!! +!! +!! IMPLICIT ARGUMENTS +!! ------------------ +!! None +!! +!! REFERENCE +!! --------- +!! Book2 of documentation ( routine READ_XKER_GWETH ) +!! +!! AUTHOR +!! ------ +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original 19/04/97 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +!* 0.2 Declarations of local variables : +! +! +INTEGER, INTENT(OUT) :: KND,KWETLBDAH,KWETLBDAG +REAL, INTENT(OUT) :: PALPHAH +REAL, INTENT(OUT) :: PNUH +REAL, INTENT(OUT) :: PALPHAG +REAL, INTENT(OUT) :: PNUG +REAL, INTENT(OUT) :: PEHG +REAL, INTENT(OUT) :: PBG +REAL, INTENT(OUT) :: PCH +REAL, INTENT(OUT) :: PDH +REAL, INTENT(OUT) :: PCG +REAL, INTENT(OUT) :: PDG +REAL, INTENT(OUT) :: PWETLBDAH_MAX +REAL, INTENT(OUT) :: PWETLBDAG_MAX +REAL, INTENT(OUT) :: PWETLBDAH_MIN +REAL, INTENT(OUT) :: PWETLBDAG_MIN +REAL, INTENT(OUT) :: PFDINFTY +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_GWETH +! +! ######################################################################## +! #INSERT HERE THE OUTPUT OF INI_RAIN_ICE_HAIL IF THE KERNELS ARE UPDATED# +! ######################################################################## +! +KND= 50 +KWETLBDAH= 40 +KWETLBDAG= 40 +PALPHAH= 0.100000E+01 +PNUH= 0.800000E+01 +PALPHAG= 0.100000E+01 +PNUG= 0.100000E+01 +PEHG= 0.100000E+01 +PBG= 0.280000E+01 +PCH= 0.201000E+03 +PDH= 0.640000E+00 +PCG= 0.122000E+03 +PDG= 0.660000E+00 +PWETLBDAH_MAX= 0.100000E+08 +PWETLBDAG_MAX= 0.100000E+08 +PWETLBDAH_MIN= 0.100000E+04 +PWETLBDAG_MIN= 0.100000E+04 +PFDINFTY= 0.200000E+02 +! +IF( PRESENT(PKER_GWETH) ) THEN +PKER_GWETH( 1, 1) = 0.662921E+01 +PKER_GWETH( 1, 2) = 0.722485E+01 +PKER_GWETH( 1, 3) = 0.772716E+01 +PKER_GWETH( 1, 4) = 0.814872E+01 +PKER_GWETH( 1, 5) = 0.850191E+01 +PKER_GWETH( 1, 6) = 0.879773E+01 +PKER_GWETH( 1, 7) = 0.904564E+01 +PKER_GWETH( 1, 8) = 0.925363E+01 +PKER_GWETH( 1, 9) = 0.942835E+01 +PKER_GWETH( 1, 10) = 0.957535E+01 +PKER_GWETH( 1, 11) = 0.969921E+01 +PKER_GWETH( 1, 12) = 0.980373E+01 +PKER_GWETH( 1, 13) = 0.989205E+01 +PKER_GWETH( 1, 14) = 0.996677E+01 +PKER_GWETH( 1, 15) = 0.100301E+02 +PKER_GWETH( 1, 16) = 0.100837E+02 +PKER_GWETH( 1, 17) = 0.101293E+02 +PKER_GWETH( 1, 18) = 0.101679E+02 +PKER_GWETH( 1, 19) = 0.102008E+02 +PKER_GWETH( 1, 20) = 0.102288E+02 +PKER_GWETH( 1, 21) = 0.102526E+02 +PKER_GWETH( 1, 22) = 0.102728E+02 +PKER_GWETH( 1, 23) = 0.102901E+02 +PKER_GWETH( 1, 24) = 0.103048E+02 +PKER_GWETH( 1, 25) = 0.103173E+02 +PKER_GWETH( 1, 26) = 0.103280E+02 +PKER_GWETH( 1, 27) = 0.103371E+02 +PKER_GWETH( 1, 28) = 0.103449E+02 +PKER_GWETH( 1, 29) = 0.103515E+02 +PKER_GWETH( 1, 30) = 0.103572E+02 +PKER_GWETH( 1, 31) = 0.103620E+02 +PKER_GWETH( 1, 32) = 0.103661E+02 +PKER_GWETH( 1, 33) = 0.103696E+02 +PKER_GWETH( 1, 34) = 0.103727E+02 +PKER_GWETH( 1, 35) = 0.103752E+02 +PKER_GWETH( 1, 36) = 0.103774E+02 +PKER_GWETH( 1, 37) = 0.103793E+02 +PKER_GWETH( 1, 38) = 0.103809E+02 +PKER_GWETH( 1, 39) = 0.103823E+02 +PKER_GWETH( 1, 40) = 0.103835E+02 +PKER_GWETH( 2, 1) = 0.511505E+01 +PKER_GWETH( 2, 2) = 0.571264E+01 +PKER_GWETH( 2, 3) = 0.622270E+01 +PKER_GWETH( 2, 4) = 0.665279E+01 +PKER_GWETH( 2, 5) = 0.701373E+01 +PKER_GWETH( 2, 6) = 0.731613E+01 +PKER_GWETH( 2, 7) = 0.756942E+01 +PKER_GWETH( 2, 8) = 0.778168E+01 +PKER_GWETH( 2, 9) = 0.795975E+01 +PKER_GWETH( 2, 10) = 0.810934E+01 +PKER_GWETH( 2, 11) = 0.823519E+01 +PKER_GWETH( 2, 12) = 0.834123E+01 +PKER_GWETH( 2, 13) = 0.843071E+01 +PKER_GWETH( 2, 14) = 0.850631E+01 +PKER_GWETH( 2, 15) = 0.857028E+01 +PKER_GWETH( 2, 16) = 0.862446E+01 +PKER_GWETH( 2, 17) = 0.867039E+01 +PKER_GWETH( 2, 18) = 0.870937E+01 +PKER_GWETH( 2, 19) = 0.874247E+01 +PKER_GWETH( 2, 20) = 0.877061E+01 +PKER_GWETH( 2, 21) = 0.879454E+01 +PKER_GWETH( 2, 22) = 0.881490E+01 +PKER_GWETH( 2, 23) = 0.883224E+01 +PKER_GWETH( 2, 24) = 0.884700E+01 +PKER_GWETH( 2, 25) = 0.885958E+01 +PKER_GWETH( 2, 26) = 0.887030E+01 +PKER_GWETH( 2, 27) = 0.887945E+01 +PKER_GWETH( 2, 28) = 0.888725E+01 +PKER_GWETH( 2, 29) = 0.889390E+01 +PKER_GWETH( 2, 30) = 0.889958E+01 +PKER_GWETH( 2, 31) = 0.890442E+01 +PKER_GWETH( 2, 32) = 0.890856E+01 +PKER_GWETH( 2, 33) = 0.891209E+01 +PKER_GWETH( 2, 34) = 0.891511E+01 +PKER_GWETH( 2, 35) = 0.891769E+01 +PKER_GWETH( 2, 36) = 0.891989E+01 +PKER_GWETH( 2, 37) = 0.892177E+01 +PKER_GWETH( 2, 38) = 0.892338E+01 +PKER_GWETH( 2, 39) = 0.892475E+01 +PKER_GWETH( 2, 40) = 0.892593E+01 +PKER_GWETH( 3, 1) = 0.382811E+01 +PKER_GWETH( 3, 2) = 0.441084E+01 +PKER_GWETH( 3, 3) = 0.492273E+01 +PKER_GWETH( 3, 4) = 0.535949E+01 +PKER_GWETH( 3, 5) = 0.572774E+01 +PKER_GWETH( 3, 6) = 0.603679E+01 +PKER_GWETH( 3, 7) = 0.629570E+01 +PKER_GWETH( 3, 8) = 0.651257E+01 +PKER_GWETH( 3, 9) = 0.669430E+01 +PKER_GWETH( 3, 10) = 0.684676E+01 +PKER_GWETH( 3, 11) = 0.697484E+01 +PKER_GWETH( 3, 12) = 0.708258E+01 +PKER_GWETH( 3, 13) = 0.717337E+01 +PKER_GWETH( 3, 14) = 0.724997E+01 +PKER_GWETH( 3, 15) = 0.731469E+01 +PKER_GWETH( 3, 16) = 0.736945E+01 +PKER_GWETH( 3, 17) = 0.741583E+01 +PKER_GWETH( 3, 18) = 0.745515E+01 +PKER_GWETH( 3, 19) = 0.748851E+01 +PKER_GWETH( 3, 20) = 0.751685E+01 +PKER_GWETH( 3, 21) = 0.754093E+01 +PKER_GWETH( 3, 22) = 0.756141E+01 +PKER_GWETH( 3, 23) = 0.757884E+01 +PKER_GWETH( 3, 24) = 0.759368E+01 +PKER_GWETH( 3, 25) = 0.760631E+01 +PKER_GWETH( 3, 26) = 0.761708E+01 +PKER_GWETH( 3, 27) = 0.762626E+01 +PKER_GWETH( 3, 28) = 0.763408E+01 +PKER_GWETH( 3, 29) = 0.764076E+01 +PKER_GWETH( 3, 30) = 0.764645E+01 +PKER_GWETH( 3, 31) = 0.765131E+01 +PKER_GWETH( 3, 32) = 0.765546E+01 +PKER_GWETH( 3, 33) = 0.765900E+01 +PKER_GWETH( 3, 34) = 0.766202E+01 +PKER_GWETH( 3, 35) = 0.766460E+01 +PKER_GWETH( 3, 36) = 0.766681E+01 +PKER_GWETH( 3, 37) = 0.766869E+01 +PKER_GWETH( 3, 38) = 0.767030E+01 +PKER_GWETH( 3, 39) = 0.767168E+01 +PKER_GWETH( 3, 40) = 0.767285E+01 +PKER_GWETH( 4, 1) = 0.276960E+01 +PKER_GWETH( 4, 2) = 0.330386E+01 +PKER_GWETH( 4, 3) = 0.380351E+01 +PKER_GWETH( 4, 4) = 0.424198E+01 +PKER_GWETH( 4, 5) = 0.461597E+01 +PKER_GWETH( 4, 6) = 0.493128E+01 +PKER_GWETH( 4, 7) = 0.519588E+01 +PKER_GWETH( 4, 8) = 0.541757E+01 +PKER_GWETH( 4, 9) = 0.560325E+01 +PKER_GWETH( 4, 10) = 0.575886E+01 +PKER_GWETH( 4, 11) = 0.588939E+01 +PKER_GWETH( 4, 12) = 0.599904E+01 +PKER_GWETH( 4, 13) = 0.609129E+01 +PKER_GWETH( 4, 14) = 0.616901E+01 +PKER_GWETH( 4, 15) = 0.623459E+01 +PKER_GWETH( 4, 16) = 0.629000E+01 +PKER_GWETH( 4, 17) = 0.633687E+01 +PKER_GWETH( 4, 18) = 0.637657E+01 +PKER_GWETH( 4, 19) = 0.641023E+01 +PKER_GWETH( 4, 20) = 0.643879E+01 +PKER_GWETH( 4, 21) = 0.646304E+01 +PKER_GWETH( 4, 22) = 0.648366E+01 +PKER_GWETH( 4, 23) = 0.650119E+01 +PKER_GWETH( 4, 24) = 0.651610E+01 +PKER_GWETH( 4, 25) = 0.652880E+01 +PKER_GWETH( 4, 26) = 0.653962E+01 +PKER_GWETH( 4, 27) = 0.654883E+01 +PKER_GWETH( 4, 28) = 0.655669E+01 +PKER_GWETH( 4, 29) = 0.656338E+01 +PKER_GWETH( 4, 30) = 0.656910E+01 +PKER_GWETH( 4, 31) = 0.657397E+01 +PKER_GWETH( 4, 32) = 0.657813E+01 +PKER_GWETH( 4, 33) = 0.658168E+01 +PKER_GWETH( 4, 34) = 0.658471E+01 +PKER_GWETH( 4, 35) = 0.658729E+01 +PKER_GWETH( 4, 36) = 0.658950E+01 +PKER_GWETH( 4, 37) = 0.659139E+01 +PKER_GWETH( 4, 38) = 0.659300E+01 +PKER_GWETH( 4, 39) = 0.659438E+01 +PKER_GWETH( 4, 40) = 0.659556E+01 +PKER_GWETH( 5, 1) = 0.195940E+01 +PKER_GWETH( 5, 2) = 0.239226E+01 +PKER_GWETH( 5, 3) = 0.285134E+01 +PKER_GWETH( 5, 4) = 0.327973E+01 +PKER_GWETH( 5, 5) = 0.365531E+01 +PKER_GWETH( 5, 6) = 0.397556E+01 +PKER_GWETH( 5, 7) = 0.424553E+01 +PKER_GWETH( 5, 8) = 0.447209E+01 +PKER_GWETH( 5, 9) = 0.466190E+01 +PKER_GWETH( 5, 10) = 0.482088E+01 +PKER_GWETH( 5, 11) = 0.495411E+01 +PKER_GWETH( 5, 12) = 0.506587E+01 +PKER_GWETH( 5, 13) = 0.515975E+01 +PKER_GWETH( 5, 14) = 0.523873E+01 +PKER_GWETH( 5, 15) = 0.530527E+01 +PKER_GWETH( 5, 16) = 0.536141E+01 +PKER_GWETH( 5, 17) = 0.540884E+01 +PKER_GWETH( 5, 18) = 0.544897E+01 +PKER_GWETH( 5, 19) = 0.548295E+01 +PKER_GWETH( 5, 20) = 0.551176E+01 +PKER_GWETH( 5, 21) = 0.553621E+01 +PKER_GWETH( 5, 22) = 0.555697E+01 +PKER_GWETH( 5, 23) = 0.557462E+01 +PKER_GWETH( 5, 24) = 0.558962E+01 +PKER_GWETH( 5, 25) = 0.560239E+01 +PKER_GWETH( 5, 26) = 0.561326E+01 +PKER_GWETH( 5, 27) = 0.562251E+01 +PKER_GWETH( 5, 28) = 0.563040E+01 +PKER_GWETH( 5, 29) = 0.563712E+01 +PKER_GWETH( 5, 30) = 0.564285E+01 +PKER_GWETH( 5, 31) = 0.564774E+01 +PKER_GWETH( 5, 32) = 0.565191E+01 +PKER_GWETH( 5, 33) = 0.565547E+01 +PKER_GWETH( 5, 34) = 0.565851E+01 +PKER_GWETH( 5, 35) = 0.566110E+01 +PKER_GWETH( 5, 36) = 0.566331E+01 +PKER_GWETH( 5, 37) = 0.566521E+01 +PKER_GWETH( 5, 38) = 0.566682E+01 +PKER_GWETH( 5, 39) = 0.566820E+01 +PKER_GWETH( 5, 40) = 0.566938E+01 +PKER_GWETH( 6, 1) = 0.142387E+01 +PKER_GWETH( 6, 2) = 0.169262E+01 +PKER_GWETH( 6, 3) = 0.206631E+01 +PKER_GWETH( 6, 4) = 0.246074E+01 +PKER_GWETH( 6, 5) = 0.282802E+01 +PKER_GWETH( 6, 6) = 0.314972E+01 +PKER_GWETH( 6, 7) = 0.342395E+01 +PKER_GWETH( 6, 8) = 0.365511E+01 +PKER_GWETH( 6, 9) = 0.384909E+01 +PKER_GWETH( 6, 10) = 0.401161E+01 +PKER_GWETH( 6, 11) = 0.414773E+01 +PKER_GWETH( 6, 12) = 0.426180E+01 +PKER_GWETH( 6, 13) = 0.435749E+01 +PKER_GWETH( 6, 14) = 0.443787E+01 +PKER_GWETH( 6, 15) = 0.450549E+01 +PKER_GWETH( 6, 16) = 0.456245E+01 +PKER_GWETH( 6, 17) = 0.461051E+01 +PKER_GWETH( 6, 18) = 0.465112E+01 +PKER_GWETH( 6, 19) = 0.468547E+01 +PKER_GWETH( 6, 20) = 0.471456E+01 +PKER_GWETH( 6, 21) = 0.473922E+01 +PKER_GWETH( 6, 22) = 0.476015E+01 +PKER_GWETH( 6, 23) = 0.477792E+01 +PKER_GWETH( 6, 24) = 0.479302E+01 +PKER_GWETH( 6, 25) = 0.480587E+01 +PKER_GWETH( 6, 26) = 0.481679E+01 +PKER_GWETH( 6, 27) = 0.482610E+01 +PKER_GWETH( 6, 28) = 0.483402E+01 +PKER_GWETH( 6, 29) = 0.484077E+01 +PKER_GWETH( 6, 30) = 0.484652E+01 +PKER_GWETH( 6, 31) = 0.485143E+01 +PKER_GWETH( 6, 32) = 0.485561E+01 +PKER_GWETH( 6, 33) = 0.485918E+01 +PKER_GWETH( 6, 34) = 0.486223E+01 +PKER_GWETH( 6, 35) = 0.486482E+01 +PKER_GWETH( 6, 36) = 0.486704E+01 +PKER_GWETH( 6, 37) = 0.486894E+01 +PKER_GWETH( 6, 38) = 0.487056E+01 +PKER_GWETH( 6, 39) = 0.487194E+01 +PKER_GWETH( 6, 40) = 0.487312E+01 +PKER_GWETH( 7, 1) = 0.116756E+01 +PKER_GWETH( 7, 2) = 0.122777E+01 +PKER_GWETH( 7, 3) = 0.146234E+01 +PKER_GWETH( 7, 4) = 0.178473E+01 +PKER_GWETH( 7, 5) = 0.212359E+01 +PKER_GWETH( 7, 6) = 0.243847E+01 +PKER_GWETH( 7, 7) = 0.271403E+01 +PKER_GWETH( 7, 8) = 0.294885E+01 +PKER_GWETH( 7, 9) = 0.314677E+01 +PKER_GWETH( 7, 10) = 0.331286E+01 +PKER_GWETH( 7, 11) = 0.345202E+01 +PKER_GWETH( 7, 12) = 0.356856E+01 +PKER_GWETH( 7, 13) = 0.366623E+01 +PKER_GWETH( 7, 14) = 0.374816E+01 +PKER_GWETH( 7, 15) = 0.381698E+01 +PKER_GWETH( 7, 16) = 0.387486E+01 +PKER_GWETH( 7, 17) = 0.392363E+01 +PKER_GWETH( 7, 18) = 0.396478E+01 +PKER_GWETH( 7, 19) = 0.399954E+01 +PKER_GWETH( 7, 20) = 0.402895E+01 +PKER_GWETH( 7, 21) = 0.405385E+01 +PKER_GWETH( 7, 22) = 0.407496E+01 +PKER_GWETH( 7, 23) = 0.409288E+01 +PKER_GWETH( 7, 24) = 0.410809E+01 +PKER_GWETH( 7, 25) = 0.412101E+01 +PKER_GWETH( 7, 26) = 0.413201E+01 +PKER_GWETH( 7, 27) = 0.414136E+01 +PKER_GWETH( 7, 28) = 0.414932E+01 +PKER_GWETH( 7, 29) = 0.415610E+01 +PKER_GWETH( 7, 30) = 0.416188E+01 +PKER_GWETH( 7, 31) = 0.416680E+01 +PKER_GWETH( 7, 32) = 0.417100E+01 +PKER_GWETH( 7, 33) = 0.417458E+01 +PKER_GWETH( 7, 34) = 0.417764E+01 +PKER_GWETH( 7, 35) = 0.418024E+01 +PKER_GWETH( 7, 36) = 0.418247E+01 +PKER_GWETH( 7, 37) = 0.418437E+01 +PKER_GWETH( 7, 38) = 0.418599E+01 +PKER_GWETH( 7, 39) = 0.418737E+01 +PKER_GWETH( 7, 40) = 0.418855E+01 +PKER_GWETH( 8, 1) = 0.115655E+01 +PKER_GWETH( 8, 2) = 0.100208E+01 +PKER_GWETH( 8, 3) = 0.105877E+01 +PKER_GWETH( 8, 4) = 0.126349E+01 +PKER_GWETH( 8, 5) = 0.154150E+01 +PKER_GWETH( 8, 6) = 0.183260E+01 +PKER_GWETH( 8, 7) = 0.210253E+01 +PKER_GWETH( 8, 8) = 0.233857E+01 +PKER_GWETH( 8, 9) = 0.253964E+01 +PKER_GWETH( 8, 10) = 0.270911E+01 +PKER_GWETH( 8, 11) = 0.285132E+01 +PKER_GWETH( 8, 12) = 0.297046E+01 +PKER_GWETH( 8, 13) = 0.307026E+01 +PKER_GWETH( 8, 14) = 0.315388E+01 +PKER_GWETH( 8, 15) = 0.322402E+01 +PKER_GWETH( 8, 16) = 0.328294E+01 +PKER_GWETH( 8, 17) = 0.333250E+01 +PKER_GWETH( 8, 18) = 0.337426E+01 +PKER_GWETH( 8, 19) = 0.340948E+01 +PKER_GWETH( 8, 20) = 0.343924E+01 +PKER_GWETH( 8, 21) = 0.346442E+01 +PKER_GWETH( 8, 22) = 0.348573E+01 +PKER_GWETH( 8, 23) = 0.350381E+01 +PKER_GWETH( 8, 24) = 0.351914E+01 +PKER_GWETH( 8, 25) = 0.353216E+01 +PKER_GWETH( 8, 26) = 0.354322E+01 +PKER_GWETH( 8, 27) = 0.355263E+01 +PKER_GWETH( 8, 28) = 0.356064E+01 +PKER_GWETH( 8, 29) = 0.356745E+01 +PKER_GWETH( 8, 30) = 0.357325E+01 +PKER_GWETH( 8, 31) = 0.357820E+01 +PKER_GWETH( 8, 32) = 0.358241E+01 +PKER_GWETH( 8, 33) = 0.358601E+01 +PKER_GWETH( 8, 34) = 0.358907E+01 +PKER_GWETH( 8, 35) = 0.359168E+01 +PKER_GWETH( 8, 36) = 0.359391E+01 +PKER_GWETH( 8, 37) = 0.359582E+01 +PKER_GWETH( 8, 38) = 0.359744E+01 +PKER_GWETH( 8, 39) = 0.359883E+01 +PKER_GWETH( 8, 40) = 0.360002E+01 +PKER_GWETH( 9, 1) = 0.132218E+01 +PKER_GWETH( 9, 2) = 0.987527E+00 +PKER_GWETH( 9, 3) = 0.860208E+00 +PKER_GWETH( 9, 4) = 0.913110E+00 +PKER_GWETH( 9, 5) = 0.109167E+01 +PKER_GWETH( 9, 6) = 0.133139E+01 +PKER_GWETH( 9, 7) = 0.158145E+01 +PKER_GWETH( 9, 8) = 0.181284E+01 +PKER_GWETH( 9, 9) = 0.201502E+01 +PKER_GWETH( 9, 10) = 0.218719E+01 +PKER_GWETH( 9, 11) = 0.233229E+01 +PKER_GWETH( 9, 12) = 0.245406E+01 +PKER_GWETH( 9, 13) = 0.255607E+01 +PKER_GWETH( 9, 14) = 0.264152E+01 +PKER_GWETH( 9, 15) = 0.271312E+01 +PKER_GWETH( 9, 16) = 0.277318E+01 +PKER_GWETH( 9, 17) = 0.282362E+01 +PKER_GWETH( 9, 18) = 0.286605E+01 +PKER_GWETH( 9, 19) = 0.290180E+01 +PKER_GWETH( 9, 20) = 0.293196E+01 +PKER_GWETH( 9, 21) = 0.295743E+01 +PKER_GWETH( 9, 22) = 0.297898E+01 +PKER_GWETH( 9, 23) = 0.299723E+01 +PKER_GWETH( 9, 24) = 0.301270E+01 +PKER_GWETH( 9, 25) = 0.302582E+01 +PKER_GWETH( 9, 26) = 0.303697E+01 +PKER_GWETH( 9, 27) = 0.304644E+01 +PKER_GWETH( 9, 28) = 0.305449E+01 +PKER_GWETH( 9, 29) = 0.306134E+01 +PKER_GWETH( 9, 30) = 0.306718E+01 +PKER_GWETH( 9, 31) = 0.307214E+01 +PKER_GWETH( 9, 32) = 0.307638E+01 +PKER_GWETH( 9, 33) = 0.307998E+01 +PKER_GWETH( 9, 34) = 0.308306E+01 +PKER_GWETH( 9, 35) = 0.308568E+01 +PKER_GWETH( 9, 36) = 0.308792E+01 +PKER_GWETH( 9, 37) = 0.308983E+01 +PKER_GWETH( 9, 38) = 0.309145E+01 +PKER_GWETH( 9, 39) = 0.309285E+01 +PKER_GWETH( 9, 40) = 0.309403E+01 +PKER_GWETH( 10, 1) = 0.158474E+01 +PKER_GWETH( 10, 2) = 0.112606E+01 +PKER_GWETH( 10, 3) = 0.843404E+00 +PKER_GWETH( 10, 4) = 0.738516E+00 +PKER_GWETH( 10, 5) = 0.787554E+00 +PKER_GWETH( 10, 6) = 0.943174E+00 +PKER_GWETH( 10, 7) = 0.114990E+01 +PKER_GWETH( 10, 8) = 0.136468E+01 +PKER_GWETH( 10, 9) = 0.156304E+01 +PKER_GWETH( 10, 10) = 0.173621E+01 +PKER_GWETH( 10, 11) = 0.188364E+01 +PKER_GWETH( 10, 12) = 0.200788E+01 +PKER_GWETH( 10, 13) = 0.211214E+01 +PKER_GWETH( 10, 14) = 0.219948E+01 +PKER_GWETH( 10, 15) = 0.227264E+01 +PKER_GWETH( 10, 16) = 0.233395E+01 +PKER_GWETH( 10, 17) = 0.238537E+01 +PKER_GWETH( 10, 18) = 0.242856E+01 +PKER_GWETH( 10, 19) = 0.246489E+01 +PKER_GWETH( 10, 20) = 0.249549E+01 +PKER_GWETH( 10, 21) = 0.252131E+01 +PKER_GWETH( 10, 22) = 0.254312E+01 +PKER_GWETH( 10, 23) = 0.256156E+01 +PKER_GWETH( 10, 24) = 0.257719E+01 +PKER_GWETH( 10, 25) = 0.259043E+01 +PKER_GWETH( 10, 26) = 0.260166E+01 +PKER_GWETH( 10, 27) = 0.261120E+01 +PKER_GWETH( 10, 28) = 0.261931E+01 +PKER_GWETH( 10, 29) = 0.262620E+01 +PKER_GWETH( 10, 30) = 0.263207E+01 +PKER_GWETH( 10, 31) = 0.263706E+01 +PKER_GWETH( 10, 32) = 0.264131E+01 +PKER_GWETH( 10, 33) = 0.264493E+01 +PKER_GWETH( 10, 34) = 0.264802E+01 +PKER_GWETH( 10, 35) = 0.265065E+01 +PKER_GWETH( 10, 36) = 0.265289E+01 +PKER_GWETH( 10, 37) = 0.265481E+01 +PKER_GWETH( 10, 38) = 0.265644E+01 +PKER_GWETH( 10, 39) = 0.265784E+01 +PKER_GWETH( 10, 40) = 0.265903E+01 +PKER_GWETH( 11, 1) = 0.187936E+01 +PKER_GWETH( 11, 2) = 0.134925E+01 +PKER_GWETH( 11, 3) = 0.959066E+00 +PKER_GWETH( 11, 4) = 0.720467E+00 +PKER_GWETH( 11, 5) = 0.634149E+00 +PKER_GWETH( 11, 6) = 0.679336E+00 +PKER_GWETH( 11, 7) = 0.814841E+00 +PKER_GWETH( 11, 8) = 0.993130E+00 +PKER_GWETH( 11, 9) = 0.117760E+01 +PKER_GWETH( 11, 10) = 0.134764E+01 +PKER_GWETH( 11, 11) = 0.149595E+01 +PKER_GWETH( 11, 12) = 0.162219E+01 +PKER_GWETH( 11, 13) = 0.172857E+01 +PKER_GWETH( 11, 14) = 0.181784E+01 +PKER_GWETH( 11, 15) = 0.189263E+01 +PKER_GWETH( 11, 16) = 0.195527E+01 +PKER_GWETH( 11, 17) = 0.200776E+01 +PKER_GWETH( 11, 18) = 0.205179E+01 +PKER_GWETH( 11, 19) = 0.208876E+01 +PKER_GWETH( 11, 20) = 0.211987E+01 +PKER_GWETH( 11, 21) = 0.214607E+01 +PKER_GWETH( 11, 22) = 0.216817E+01 +PKER_GWETH( 11, 23) = 0.218684E+01 +PKER_GWETH( 11, 24) = 0.220263E+01 +PKER_GWETH( 11, 25) = 0.221601E+01 +PKER_GWETH( 11, 26) = 0.222734E+01 +PKER_GWETH( 11, 27) = 0.223696E+01 +PKER_GWETH( 11, 28) = 0.224512E+01 +PKER_GWETH( 11, 29) = 0.225206E+01 +PKER_GWETH( 11, 30) = 0.225796E+01 +PKER_GWETH( 11, 31) = 0.226298E+01 +PKER_GWETH( 11, 32) = 0.226725E+01 +PKER_GWETH( 11, 33) = 0.227089E+01 +PKER_GWETH( 11, 34) = 0.227399E+01 +PKER_GWETH( 11, 35) = 0.227663E+01 +PKER_GWETH( 11, 36) = 0.227889E+01 +PKER_GWETH( 11, 37) = 0.228081E+01 +PKER_GWETH( 11, 38) = 0.228245E+01 +PKER_GWETH( 11, 39) = 0.228384E+01 +PKER_GWETH( 11, 40) = 0.228504E+01 +PKER_GWETH( 12, 1) = 0.216566E+01 +PKER_GWETH( 12, 2) = 0.160109E+01 +PKER_GWETH( 12, 3) = 0.114873E+01 +PKER_GWETH( 12, 4) = 0.816878E+00 +PKER_GWETH( 12, 5) = 0.615510E+00 +PKER_GWETH( 12, 6) = 0.544612E+00 +PKER_GWETH( 12, 7) = 0.586008E+00 +PKER_GWETH( 12, 8) = 0.703936E+00 +PKER_GWETH( 12, 9) = 0.857718E+00 +PKER_GWETH( 12, 10) = 0.101614E+01 +PKER_GWETH( 12, 11) = 0.116189E+01 +PKER_GWETH( 12, 12) = 0.128892E+01 +PKER_GWETH( 12, 13) = 0.139702E+01 +PKER_GWETH( 12, 14) = 0.148811E+01 +PKER_GWETH( 12, 15) = 0.156454E+01 +PKER_GWETH( 12, 16) = 0.162858E+01 +PKER_GWETH( 12, 17) = 0.168221E+01 +PKER_GWETH( 12, 18) = 0.172715E+01 +PKER_GWETH( 12, 19) = 0.176485E+01 +PKER_GWETH( 12, 20) = 0.179651E+01 +PKER_GWETH( 12, 21) = 0.182314E+01 +PKER_GWETH( 12, 22) = 0.184557E+01 +PKER_GWETH( 12, 23) = 0.186449E+01 +PKER_GWETH( 12, 24) = 0.188048E+01 +PKER_GWETH( 12, 25) = 0.189400E+01 +PKER_GWETH( 12, 26) = 0.190544E+01 +PKER_GWETH( 12, 27) = 0.191515E+01 +PKER_GWETH( 12, 28) = 0.192338E+01 +PKER_GWETH( 12, 29) = 0.193037E+01 +PKER_GWETH( 12, 30) = 0.193631E+01 +PKER_GWETH( 12, 31) = 0.194136E+01 +PKER_GWETH( 12, 32) = 0.194565E+01 +PKER_GWETH( 12, 33) = 0.194931E+01 +PKER_GWETH( 12, 34) = 0.195242E+01 +PKER_GWETH( 12, 35) = 0.195508E+01 +PKER_GWETH( 12, 36) = 0.195734E+01 +PKER_GWETH( 12, 37) = 0.195926E+01 +PKER_GWETH( 12, 38) = 0.196091E+01 +PKER_GWETH( 12, 39) = 0.196231E+01 +PKER_GWETH( 12, 40) = 0.196351E+01 +PKER_GWETH( 13, 1) = 0.242478E+01 +PKER_GWETH( 13, 2) = 0.184651E+01 +PKER_GWETH( 13, 3) = 0.136400E+01 +PKER_GWETH( 13, 4) = 0.978003E+00 +PKER_GWETH( 13, 5) = 0.695793E+00 +PKER_GWETH( 13, 6) = 0.525848E+00 +PKER_GWETH( 13, 7) = 0.467780E+00 +PKER_GWETH( 13, 8) = 0.505573E+00 +PKER_GWETH( 13, 9) = 0.608098E+00 +PKER_GWETH( 13, 10) = 0.740757E+00 +PKER_GWETH( 13, 11) = 0.876797E+00 +PKER_GWETH( 13, 12) = 0.100173E+01 +PKER_GWETH( 13, 13) = 0.111053E+01 +PKER_GWETH( 13, 14) = 0.120309E+01 +PKER_GWETH( 13, 15) = 0.128108E+01 +PKER_GWETH( 13, 16) = 0.134653E+01 +PKER_GWETH( 13, 17) = 0.140136E+01 +PKER_GWETH( 13, 18) = 0.144728E+01 +PKER_GWETH( 13, 19) = 0.148576E+01 +PKER_GWETH( 13, 20) = 0.151804E+01 +PKER_GWETH( 13, 21) = 0.154514E+01 +PKER_GWETH( 13, 22) = 0.156794E+01 +PKER_GWETH( 13, 23) = 0.158715E+01 +PKER_GWETH( 13, 24) = 0.160335E+01 +PKER_GWETH( 13, 25) = 0.161703E+01 +PKER_GWETH( 13, 26) = 0.162860E+01 +PKER_GWETH( 13, 27) = 0.163840E+01 +PKER_GWETH( 13, 28) = 0.164671E+01 +PKER_GWETH( 13, 29) = 0.165376E+01 +PKER_GWETH( 13, 30) = 0.165974E+01 +PKER_GWETH( 13, 31) = 0.166482E+01 +PKER_GWETH( 13, 32) = 0.166914E+01 +PKER_GWETH( 13, 33) = 0.167282E+01 +PKER_GWETH( 13, 34) = 0.167595E+01 +PKER_GWETH( 13, 35) = 0.167862E+01 +PKER_GWETH( 13, 36) = 0.168089E+01 +PKER_GWETH( 13, 37) = 0.168282E+01 +PKER_GWETH( 13, 38) = 0.168447E+01 +PKER_GWETH( 13, 39) = 0.168588E+01 +PKER_GWETH( 13, 40) = 0.168708E+01 +PKER_GWETH( 14, 1) = 0.265128E+01 +PKER_GWETH( 14, 2) = 0.206894E+01 +PKER_GWETH( 14, 3) = 0.157436E+01 +PKER_GWETH( 14, 4) = 0.116200E+01 +PKER_GWETH( 14, 5) = 0.832643E+00 +PKER_GWETH( 14, 6) = 0.592653E+00 +PKER_GWETH( 14, 7) = 0.449243E+00 +PKER_GWETH( 14, 8) = 0.401845E+00 +PKER_GWETH( 14, 9) = 0.436189E+00 +PKER_GWETH( 14, 10) = 0.525318E+00 +PKER_GWETH( 14, 11) = 0.639731E+00 +PKER_GWETH( 14, 12) = 0.756546E+00 +PKER_GWETH( 14, 13) = 0.863627E+00 +PKER_GWETH( 14, 14) = 0.956814E+00 +PKER_GWETH( 14, 15) = 0.103607E+01 +PKER_GWETH( 14, 16) = 0.110285E+01 +PKER_GWETH( 14, 17) = 0.115889E+01 +PKER_GWETH( 14, 18) = 0.120583E+01 +PKER_GWETH( 14, 19) = 0.124515E+01 +PKER_GWETH( 14, 20) = 0.127810E+01 +PKER_GWETH( 14, 21) = 0.130574E+01 +PKER_GWETH( 14, 22) = 0.132895E+01 +PKER_GWETH( 14, 23) = 0.134846E+01 +PKER_GWETH( 14, 24) = 0.136491E+01 +PKER_GWETH( 14, 25) = 0.137878E+01 +PKER_GWETH( 14, 26) = 0.139049E+01 +PKER_GWETH( 14, 27) = 0.140040E+01 +PKER_GWETH( 14, 28) = 0.140879E+01 +PKER_GWETH( 14, 29) = 0.141590E+01 +PKER_GWETH( 14, 30) = 0.142193E+01 +PKER_GWETH( 14, 31) = 0.142705E+01 +PKER_GWETH( 14, 32) = 0.143140E+01 +PKER_GWETH( 14, 33) = 0.143510E+01 +PKER_GWETH( 14, 34) = 0.143825E+01 +PKER_GWETH( 14, 35) = 0.144093E+01 +PKER_GWETH( 14, 36) = 0.144321E+01 +PKER_GWETH( 14, 37) = 0.144515E+01 +PKER_GWETH( 14, 38) = 0.144681E+01 +PKER_GWETH( 14, 39) = 0.144822E+01 +PKER_GWETH( 14, 40) = 0.144942E+01 +PKER_GWETH( 15, 1) = 0.284621E+01 +PKER_GWETH( 15, 2) = 0.226351E+01 +PKER_GWETH( 15, 3) = 0.176529E+01 +PKER_GWETH( 15, 4) = 0.134229E+01 +PKER_GWETH( 15, 5) = 0.989890E+00 +PKER_GWETH( 15, 6) = 0.708881E+00 +PKER_GWETH( 15, 7) = 0.504845E+00 +PKER_GWETH( 15, 8) = 0.383795E+00 +PKER_GWETH( 15, 9) = 0.345252E+00 +PKER_GWETH( 15, 10) = 0.376367E+00 +PKER_GWETH( 15, 11) = 0.453863E+00 +PKER_GWETH( 15, 12) = 0.552469E+00 +PKER_GWETH( 15, 13) = 0.652771E+00 +PKER_GWETH( 15, 14) = 0.744550E+00 +PKER_GWETH( 15, 15) = 0.824363E+00 +PKER_GWETH( 15, 16) = 0.892231E+00 +PKER_GWETH( 15, 17) = 0.949407E+00 +PKER_GWETH( 15, 18) = 0.997387E+00 +PKER_GWETH( 15, 19) = 0.103759E+01 +PKER_GWETH( 15, 20) = 0.107125E+01 +PKER_GWETH( 15, 21) = 0.109946E+01 +PKER_GWETH( 15, 22) = 0.112312E+01 +PKER_GWETH( 15, 23) = 0.114300E+01 +PKER_GWETH( 15, 24) = 0.115971E+01 +PKER_GWETH( 15, 25) = 0.117378E+01 +PKER_GWETH( 15, 26) = 0.118566E+01 +PKER_GWETH( 15, 27) = 0.119569E+01 +PKER_GWETH( 15, 28) = 0.120417E+01 +PKER_GWETH( 15, 29) = 0.121135E+01 +PKER_GWETH( 15, 30) = 0.121743E+01 +PKER_GWETH( 15, 31) = 0.122260E+01 +PKER_GWETH( 15, 32) = 0.122698E+01 +PKER_GWETH( 15, 33) = 0.123071E+01 +PKER_GWETH( 15, 34) = 0.123387E+01 +PKER_GWETH( 15, 35) = 0.123657E+01 +PKER_GWETH( 15, 36) = 0.123886E+01 +PKER_GWETH( 15, 37) = 0.124081E+01 +PKER_GWETH( 15, 38) = 0.124247E+01 +PKER_GWETH( 15, 39) = 0.124389E+01 +PKER_GWETH( 15, 40) = 0.124510E+01 +PKER_GWETH( 16, 1) = 0.301293E+01 +PKER_GWETH( 16, 2) = 0.243100E+01 +PKER_GWETH( 16, 3) = 0.193242E+01 +PKER_GWETH( 16, 4) = 0.150618E+01 +PKER_GWETH( 16, 5) = 0.114441E+01 +PKER_GWETH( 16, 6) = 0.843236E+00 +PKER_GWETH( 16, 7) = 0.603507E+00 +PKER_GWETH( 16, 8) = 0.430078E+00 +PKER_GWETH( 16, 9) = 0.327966E+00 +PKER_GWETH( 16, 10) = 0.296680E+00 +PKER_GWETH( 16, 11) = 0.324772E+00 +PKER_GWETH( 16, 12) = 0.392150E+00 +PKER_GWETH( 16, 13) = 0.477107E+00 +PKER_GWETH( 16, 14) = 0.563219E+00 +PKER_GWETH( 16, 15) = 0.641879E+00 +PKER_GWETH( 16, 16) = 0.710236E+00 +PKER_GWETH( 16, 17) = 0.768350E+00 +PKER_GWETH( 16, 18) = 0.817307E+00 +PKER_GWETH( 16, 19) = 0.858389E+00 +PKER_GWETH( 16, 20) = 0.892809E+00 +PKER_GWETH( 16, 21) = 0.921636E+00 +PKER_GWETH( 16, 22) = 0.945790E+00 +PKER_GWETH( 16, 23) = 0.966049E+00 +PKER_GWETH( 16, 24) = 0.983062E+00 +PKER_GWETH( 16, 25) = 0.997370E+00 +PKER_GWETH( 16, 26) = 0.100942E+01 +PKER_GWETH( 16, 27) = 0.101959E+01 +PKER_GWETH( 16, 28) = 0.102817E+01 +PKER_GWETH( 16, 29) = 0.103543E+01 +PKER_GWETH( 16, 30) = 0.104158E+01 +PKER_GWETH( 16, 31) = 0.104679E+01 +PKER_GWETH( 16, 32) = 0.105121E+01 +PKER_GWETH( 16, 33) = 0.105496E+01 +PKER_GWETH( 16, 34) = 0.105815E+01 +PKER_GWETH( 16, 35) = 0.106086E+01 +PKER_GWETH( 16, 36) = 0.106317E+01 +PKER_GWETH( 16, 37) = 0.106513E+01 +PKER_GWETH( 16, 38) = 0.106680E+01 +PKER_GWETH( 16, 39) = 0.106822E+01 +PKER_GWETH( 16, 40) = 0.106944E+01 +PKER_GWETH( 17, 1) = 0.315524E+01 +PKER_GWETH( 17, 2) = 0.257428E+01 +PKER_GWETH( 17, 3) = 0.207634E+01 +PKER_GWETH( 17, 4) = 0.164974E+01 +PKER_GWETH( 17, 5) = 0.128507E+01 +PKER_GWETH( 17, 6) = 0.975670E+00 +PKER_GWETH( 17, 7) = 0.718280E+00 +PKER_GWETH( 17, 8) = 0.513786E+00 +PKER_GWETH( 17, 9) = 0.366371E+00 +PKER_GWETH( 17, 10) = 0.280370E+00 +PKER_GWETH( 17, 11) = 0.254985E+00 +PKER_GWETH( 17, 12) = 0.280264E+00 +PKER_GWETH( 17, 13) = 0.338829E+00 +PKER_GWETH( 17, 14) = 0.412012E+00 +PKER_GWETH( 17, 15) = 0.485941E+00 +PKER_GWETH( 17, 16) = 0.553357E+00 +PKER_GWETH( 17, 17) = 0.611901E+00 +PKER_GWETH( 17, 18) = 0.661663E+00 +PKER_GWETH( 17, 19) = 0.703581E+00 +PKER_GWETH( 17, 20) = 0.738757E+00 +PKER_GWETH( 17, 21) = 0.768229E+00 +PKER_GWETH( 17, 22) = 0.792912E+00 +PKER_GWETH( 17, 23) = 0.813593E+00 +PKER_GWETH( 17, 24) = 0.830939E+00 +PKER_GWETH( 17, 25) = 0.845506E+00 +PKER_GWETH( 17, 26) = 0.857756E+00 +PKER_GWETH( 17, 27) = 0.868074E+00 +PKER_GWETH( 17, 28) = 0.876776E+00 +PKER_GWETH( 17, 29) = 0.884126E+00 +PKER_GWETH( 17, 30) = 0.890342E+00 +PKER_GWETH( 17, 31) = 0.895604E+00 +PKER_GWETH( 17, 32) = 0.900064E+00 +PKER_GWETH( 17, 33) = 0.903847E+00 +PKER_GWETH( 17, 34) = 0.907059E+00 +PKER_GWETH( 17, 35) = 0.909788E+00 +PKER_GWETH( 17, 36) = 0.912108E+00 +PKER_GWETH( 17, 37) = 0.914081E+00 +PKER_GWETH( 17, 38) = 0.915761E+00 +PKER_GWETH( 17, 39) = 0.917191E+00 +PKER_GWETH( 17, 40) = 0.918409E+00 +PKER_GWETH( 18, 1) = 0.327670E+01 +PKER_GWETH( 18, 2) = 0.269659E+01 +PKER_GWETH( 18, 3) = 0.219947E+01 +PKER_GWETH( 18, 4) = 0.177340E+01 +PKER_GWETH( 18, 5) = 0.140838E+01 +PKER_GWETH( 18, 6) = 0.109640E+01 +PKER_GWETH( 18, 7) = 0.831787E+00 +PKER_GWETH( 18, 8) = 0.611835E+00 +PKER_GWETH( 18, 9) = 0.437396E+00 +PKER_GWETH( 18, 10) = 0.312131E+00 +PKER_GWETH( 18, 11) = 0.239703E+00 +PKER_GWETH( 18, 12) = 0.219181E+00 +PKER_GWETH( 18, 13) = 0.241879E+00 +PKER_GWETH( 18, 14) = 0.292751E+00 +PKER_GWETH( 18, 15) = 0.355792E+00 +PKER_GWETH( 18, 16) = 0.419256E+00 +PKER_GWETH( 18, 17) = 0.477033E+00 +PKER_GWETH( 18, 18) = 0.527174E+00 +PKER_GWETH( 18, 19) = 0.569783E+00 +PKER_GWETH( 18, 20) = 0.605675E+00 +PKER_GWETH( 18, 21) = 0.635795E+00 +PKER_GWETH( 18, 22) = 0.661029E+00 +PKER_GWETH( 18, 23) = 0.682164E+00 +PKER_GWETH( 18, 24) = 0.699872E+00 +PKER_GWETH( 18, 25) = 0.714724E+00 +PKER_GWETH( 18, 26) = 0.727195E+00 +PKER_GWETH( 18, 27) = 0.737684E+00 +PKER_GWETH( 18, 28) = 0.746517E+00 +PKER_GWETH( 18, 29) = 0.753968E+00 +PKER_GWETH( 18, 30) = 0.760260E+00 +PKER_GWETH( 18, 31) = 0.765581E+00 +PKER_GWETH( 18, 32) = 0.770086E+00 +PKER_GWETH( 18, 33) = 0.773904E+00 +PKER_GWETH( 18, 34) = 0.777142E+00 +PKER_GWETH( 18, 35) = 0.779891E+00 +PKER_GWETH( 18, 36) = 0.782227E+00 +PKER_GWETH( 18, 37) = 0.784213E+00 +PKER_GWETH( 18, 38) = 0.785902E+00 +PKER_GWETH( 18, 39) = 0.787339E+00 +PKER_GWETH( 18, 40) = 0.788563E+00 +PKER_GWETH( 19, 1) = 0.338040E+01 +PKER_GWETH( 19, 2) = 0.280098E+01 +PKER_GWETH( 19, 3) = 0.230458E+01 +PKER_GWETH( 19, 4) = 0.187921E+01 +PKER_GWETH( 19, 5) = 0.151464E+01 +PKER_GWETH( 19, 6) = 0.120232E+01 +PKER_GWETH( 19, 7) = 0.935412E+00 +PKER_GWETH( 19, 8) = 0.709100E+00 +PKER_GWETH( 19, 9) = 0.521170E+00 +PKER_GWETH( 19, 10) = 0.372366E+00 +PKER_GWETH( 19, 11) = 0.265933E+00 +PKER_GWETH( 19, 12) = 0.204940E+00 +PKER_GWETH( 19, 13) = 0.188413E+00 +PKER_GWETH( 19, 14) = 0.208761E+00 +PKER_GWETH( 19, 15) = 0.252933E+00 +PKER_GWETH( 19, 16) = 0.307238E+00 +PKER_GWETH( 19, 17) = 0.361714E+00 +PKER_GWETH( 19, 18) = 0.411229E+00 +PKER_GWETH( 19, 19) = 0.454172E+00 +PKER_GWETH( 19, 20) = 0.490657E+00 +PKER_GWETH( 19, 21) = 0.521389E+00 +PKER_GWETH( 19, 22) = 0.547179E+00 +PKER_GWETH( 19, 23) = 0.568786E+00 +PKER_GWETH( 19, 24) = 0.586882E+00 +PKER_GWETH( 19, 25) = 0.602044E+00 +PKER_GWETH( 19, 26) = 0.614761E+00 +PKER_GWETH( 19, 27) = 0.625439E+00 +PKER_GWETH( 19, 28) = 0.634419E+00 +PKER_GWETH( 19, 29) = 0.641982E+00 +PKER_GWETH( 19, 30) = 0.648360E+00 +PKER_GWETH( 19, 31) = 0.653747E+00 +PKER_GWETH( 19, 32) = 0.658302E+00 +PKER_GWETH( 19, 33) = 0.662158E+00 +PKER_GWETH( 19, 34) = 0.665426E+00 +PKER_GWETH( 19, 35) = 0.668199E+00 +PKER_GWETH( 19, 36) = 0.670552E+00 +PKER_GWETH( 19, 37) = 0.672551E+00 +PKER_GWETH( 19, 38) = 0.674251E+00 +PKER_GWETH( 19, 39) = 0.675696E+00 +PKER_GWETH( 19, 40) = 0.676927E+00 +PKER_GWETH( 20, 1) = 0.346899E+01 +PKER_GWETH( 20, 2) = 0.289011E+01 +PKER_GWETH( 20, 3) = 0.239431E+01 +PKER_GWETH( 20, 4) = 0.196955E+01 +PKER_GWETH( 20, 5) = 0.160557E+01 +PKER_GWETH( 20, 6) = 0.129362E+01 +PKER_GWETH( 20, 7) = 0.102639E+01 +PKER_GWETH( 20, 8) = 0.798045E+00 +PKER_GWETH( 20, 9) = 0.604502E+00 +PKER_GWETH( 20, 10) = 0.443925E+00 +PKER_GWETH( 20, 11) = 0.317014E+00 +PKER_GWETH( 20, 12) = 0.226583E+00 +PKER_GWETH( 20, 13) = 0.175230E+00 +PKER_GWETH( 20, 14) = 0.161988E+00 +PKER_GWETH( 20, 15) = 0.180189E+00 +PKER_GWETH( 20, 16) = 0.218528E+00 +PKER_GWETH( 20, 17) = 0.265303E+00 +PKER_GWETH( 20, 18) = 0.312063E+00 +PKER_GWETH( 20, 19) = 0.354496E+00 +PKER_GWETH( 20, 20) = 0.391273E+00 +PKER_GWETH( 20, 21) = 0.422515E+00 +PKER_GWETH( 20, 22) = 0.448829E+00 +PKER_GWETH( 20, 23) = 0.470911E+00 +PKER_GWETH( 20, 24) = 0.489412E+00 +PKER_GWETH( 20, 25) = 0.504907E+00 +PKER_GWETH( 20, 26) = 0.517890E+00 +PKER_GWETH( 20, 27) = 0.528777E+00 +PKER_GWETH( 20, 28) = 0.537920E+00 +PKER_GWETH( 20, 29) = 0.545608E+00 +PKER_GWETH( 20, 30) = 0.552083E+00 +PKER_GWETH( 20, 31) = 0.557544E+00 +PKER_GWETH( 20, 32) = 0.562156E+00 +PKER_GWETH( 20, 33) = 0.566055E+00 +PKER_GWETH( 20, 34) = 0.569357E+00 +PKER_GWETH( 20, 35) = 0.572154E+00 +PKER_GWETH( 20, 36) = 0.574527E+00 +PKER_GWETH( 20, 37) = 0.576541E+00 +PKER_GWETH( 20, 38) = 0.578253E+00 +PKER_GWETH( 20, 39) = 0.579707E+00 +PKER_GWETH( 20, 40) = 0.580945E+00 +PKER_GWETH( 21, 1) = 0.354473E+01 +PKER_GWETH( 21, 2) = 0.296625E+01 +PKER_GWETH( 21, 3) = 0.247091E+01 +PKER_GWETH( 21, 4) = 0.204667E+01 +PKER_GWETH( 21, 5) = 0.168322E+01 +PKER_GWETH( 21, 6) = 0.137177E+01 +PKER_GWETH( 21, 7) = 0.110484E+01 +PKER_GWETH( 21, 8) = 0.876190E+00 +PKER_GWETH( 21, 9) = 0.680837E+00 +PKER_GWETH( 21, 10) = 0.515324E+00 +PKER_GWETH( 21, 11) = 0.378113E+00 +PKER_GWETH( 21, 12) = 0.269896E+00 +PKER_GWETH( 21, 13) = 0.193066E+00 +PKER_GWETH( 21, 14) = 0.149847E+00 +PKER_GWETH( 21, 15) = 0.139314E+00 +PKER_GWETH( 21, 16) = 0.155539E+00 +PKER_GWETH( 21, 17) = 0.188802E+00 +PKER_GWETH( 21, 18) = 0.229088E+00 +PKER_GWETH( 21, 19) = 0.269221E+00 +PKER_GWETH( 21, 20) = 0.305584E+00 +PKER_GWETH( 21, 21) = 0.337081E+00 +PKER_GWETH( 21, 22) = 0.363833E+00 +PKER_GWETH( 21, 23) = 0.386364E+00 +PKER_GWETH( 21, 24) = 0.405272E+00 +PKER_GWETH( 21, 25) = 0.421113E+00 +PKER_GWETH( 21, 26) = 0.434381E+00 +PKER_GWETH( 21, 27) = 0.445497E+00 +PKER_GWETH( 21, 28) = 0.454819E+00 +PKER_GWETH( 21, 29) = 0.462647E+00 +PKER_GWETH( 21, 30) = 0.469230E+00 +PKER_GWETH( 21, 31) = 0.474773E+00 +PKER_GWETH( 21, 32) = 0.479448E+00 +PKER_GWETH( 21, 33) = 0.483396E+00 +PKER_GWETH( 21, 34) = 0.486735E+00 +PKER_GWETH( 21, 35) = 0.489561E+00 +PKER_GWETH( 21, 36) = 0.491955E+00 +PKER_GWETH( 21, 37) = 0.493987E+00 +PKER_GWETH( 21, 38) = 0.495711E+00 +PKER_GWETH( 21, 39) = 0.497176E+00 +PKER_GWETH( 21, 40) = 0.498421E+00 +PKER_GWETH( 22, 1) = 0.360950E+01 +PKER_GWETH( 22, 2) = 0.303135E+01 +PKER_GWETH( 22, 3) = 0.253636E+01 +PKER_GWETH( 22, 4) = 0.211251E+01 +PKER_GWETH( 22, 5) = 0.174949E+01 +PKER_GWETH( 22, 6) = 0.143850E+01 +PKER_GWETH( 22, 7) = 0.117200E+01 +PKER_GWETH( 22, 8) = 0.943598E+00 +PKER_GWETH( 22, 9) = 0.747958E+00 +PKER_GWETH( 22, 10) = 0.580832E+00 +PKER_GWETH( 22, 11) = 0.439289E+00 +PKER_GWETH( 22, 12) = 0.322049E+00 +PKER_GWETH( 22, 13) = 0.229775E+00 +PKER_GWETH( 22, 14) = 0.164515E+00 +PKER_GWETH( 22, 15) = 0.128163E+00 +PKER_GWETH( 22, 16) = 0.119816E+00 +PKER_GWETH( 22, 17) = 0.134267E+00 +PKER_GWETH( 22, 18) = 0.163121E+00 +PKER_GWETH( 22, 19) = 0.197811E+00 +PKER_GWETH( 22, 20) = 0.232255E+00 +PKER_GWETH( 22, 21) = 0.263416E+00 +PKER_GWETH( 22, 22) = 0.290391E+00 +PKER_GWETH( 22, 23) = 0.313297E+00 +PKER_GWETH( 22, 24) = 0.332590E+00 +PKER_GWETH( 22, 25) = 0.348779E+00 +PKER_GWETH( 22, 26) = 0.362344E+00 +PKER_GWETH( 22, 27) = 0.373704E+00 +PKER_GWETH( 22, 28) = 0.383222E+00 +PKER_GWETH( 22, 29) = 0.391204E+00 +PKER_GWETH( 22, 30) = 0.397906E+00 +PKER_GWETH( 22, 31) = 0.403542E+00 +PKER_GWETH( 22, 32) = 0.408288E+00 +PKER_GWETH( 22, 33) = 0.412291E+00 +PKER_GWETH( 22, 34) = 0.415671E+00 +PKER_GWETH( 22, 35) = 0.418529E+00 +PKER_GWETH( 22, 36) = 0.420948E+00 +PKER_GWETH( 22, 37) = 0.422998E+00 +PKER_GWETH( 22, 38) = 0.424737E+00 +PKER_GWETH( 22, 39) = 0.426213E+00 +PKER_GWETH( 22, 40) = 0.427466E+00 +PKER_GWETH( 23, 1) = 0.366493E+01 +PKER_GWETH( 23, 2) = 0.308702E+01 +PKER_GWETH( 23, 3) = 0.259231E+01 +PKER_GWETH( 23, 4) = 0.216876E+01 +PKER_GWETH( 23, 5) = 0.180608E+01 +PKER_GWETH( 23, 6) = 0.149546E+01 +PKER_GWETH( 23, 7) = 0.122935E+01 +PKER_GWETH( 23, 8) = 0.100131E+01 +PKER_GWETH( 23, 9) = 0.805877E+00 +PKER_GWETH( 23, 10) = 0.638482E+00 +PKER_GWETH( 23, 11) = 0.495507E+00 +PKER_GWETH( 23, 12) = 0.374461E+00 +PKER_GWETH( 23, 13) = 0.274294E+00 +PKER_GWETH( 23, 14) = 0.195610E+00 +PKER_GWETH( 23, 15) = 0.140194E+00 +PKER_GWETH( 23, 16) = 0.109633E+00 +PKER_GWETH( 23, 17) = 0.103053E+00 +PKER_GWETH( 23, 18) = 0.115911E+00 +PKER_GWETH( 23, 19) = 0.140932E+00 +PKER_GWETH( 23, 20) = 0.170802E+00 +PKER_GWETH( 23, 21) = 0.200361E+00 +PKER_GWETH( 23, 22) = 0.227063E+00 +PKER_GWETH( 23, 23) = 0.250165E+00 +PKER_GWETH( 23, 24) = 0.269779E+00 +PKER_GWETH( 23, 25) = 0.286298E+00 +PKER_GWETH( 23, 26) = 0.300160E+00 +PKER_GWETH( 23, 27) = 0.311775E+00 +PKER_GWETH( 23, 28) = 0.321502E+00 +PKER_GWETH( 23, 29) = 0.329651E+00 +PKER_GWETH( 23, 30) = 0.336486E+00 +PKER_GWETH( 23, 31) = 0.342224E+00 +PKER_GWETH( 23, 32) = 0.347050E+00 +PKER_GWETH( 23, 33) = 0.351113E+00 +PKER_GWETH( 23, 34) = 0.354540E+00 +PKER_GWETH( 23, 35) = 0.357434E+00 +PKER_GWETH( 23, 36) = 0.359880E+00 +PKER_GWETH( 23, 37) = 0.361951E+00 +PKER_GWETH( 23, 38) = 0.363706E+00 +PKER_GWETH( 23, 39) = 0.365194E+00 +PKER_GWETH( 23, 40) = 0.366458E+00 +PKER_GWETH( 24, 1) = 0.371238E+01 +PKER_GWETH( 24, 2) = 0.313467E+01 +PKER_GWETH( 24, 3) = 0.264017E+01 +PKER_GWETH( 24, 4) = 0.221685E+01 +PKER_GWETH( 24, 5) = 0.185444E+01 +PKER_GWETH( 24, 6) = 0.154410E+01 +PKER_GWETH( 24, 7) = 0.127831E+01 +PKER_GWETH( 24, 8) = 0.105060E+01 +PKER_GWETH( 24, 9) = 0.855474E+00 +PKER_GWETH( 24, 10) = 0.688249E+00 +PKER_GWETH( 24, 11) = 0.545022E+00 +PKER_GWETH( 24, 12) = 0.422707E+00 +PKER_GWETH( 24, 13) = 0.319192E+00 +PKER_GWETH( 24, 14) = 0.233616E+00 +PKER_GWETH( 24, 15) = 0.166516E+00 +PKER_GWETH( 24, 16) = 0.119479E+00 +PKER_GWETH( 24, 17) = 0.937955E-01 +PKER_GWETH( 24, 18) = 0.886577E-01 +PKER_GWETH( 24, 19) = 0.100071E+00 +PKER_GWETH( 24, 20) = 0.121762E+00 +PKER_GWETH( 24, 21) = 0.147476E+00 +PKER_GWETH( 24, 22) = 0.172842E+00 +PKER_GWETH( 24, 23) = 0.195723E+00 +PKER_GWETH( 24, 24) = 0.215508E+00 +PKER_GWETH( 24, 25) = 0.232302E+00 +PKER_GWETH( 24, 26) = 0.246447E+00 +PKER_GWETH( 24, 27) = 0.258317E+00 +PKER_GWETH( 24, 28) = 0.268262E+00 +PKER_GWETH( 24, 29) = 0.276591E+00 +PKER_GWETH( 24, 30) = 0.283569E+00 +PKER_GWETH( 24, 31) = 0.289421E+00 +PKER_GWETH( 24, 32) = 0.294334E+00 +PKER_GWETH( 24, 33) = 0.298465E+00 +PKER_GWETH( 24, 34) = 0.301944E+00 +PKER_GWETH( 24, 35) = 0.304878E+00 +PKER_GWETH( 24, 36) = 0.307355E+00 +PKER_GWETH( 24, 37) = 0.309450E+00 +PKER_GWETH( 24, 38) = 0.311223E+00 +PKER_GWETH( 24, 39) = 0.312725E+00 +PKER_GWETH( 24, 40) = 0.313999E+00 +PKER_GWETH( 25, 1) = 0.375303E+01 +PKER_GWETH( 25, 2) = 0.317546E+01 +PKER_GWETH( 25, 3) = 0.268112E+01 +PKER_GWETH( 25, 4) = 0.225799E+01 +PKER_GWETH( 25, 5) = 0.189577E+01 +PKER_GWETH( 25, 6) = 0.158566E+01 +PKER_GWETH( 25, 7) = 0.132011E+01 +PKER_GWETH( 25, 8) = 0.109268E+01 +PKER_GWETH( 25, 9) = 0.897836E+00 +PKER_GWETH( 25, 10) = 0.730871E+00 +PKER_GWETH( 25, 11) = 0.587782E+00 +PKER_GWETH( 25, 12) = 0.465234E+00 +PKER_GWETH( 25, 13) = 0.360595E+00 +PKER_GWETH( 25, 14) = 0.272075E+00 +PKER_GWETH( 25, 15) = 0.198965E+00 +PKER_GWETH( 25, 16) = 0.141750E+00 +PKER_GWETH( 25, 17) = 0.101826E+00 +PKER_GWETH( 25, 18) = 0.802566E-01 +PKER_GWETH( 25, 19) = 0.762812E-01 +PKER_GWETH( 25, 20) = 0.864000E-01 +PKER_GWETH( 25, 21) = 0.105199E+00 +PKER_GWETH( 25, 22) = 0.127333E+00 +PKER_GWETH( 25, 23) = 0.149100E+00 +PKER_GWETH( 25, 24) = 0.168706E+00 +PKER_GWETH( 25, 25) = 0.185649E+00 +PKER_GWETH( 25, 26) = 0.200030E+00 +PKER_GWETH( 25, 27) = 0.212142E+00 +PKER_GWETH( 25, 28) = 0.222305E+00 +PKER_GWETH( 25, 29) = 0.230821E+00 +PKER_GWETH( 25, 30) = 0.237952E+00 +PKER_GWETH( 25, 31) = 0.243927E+00 +PKER_GWETH( 25, 32) = 0.248938E+00 +PKER_GWETH( 25, 33) = 0.253145E+00 +PKER_GWETH( 25, 34) = 0.256682E+00 +PKER_GWETH( 25, 35) = 0.259660E+00 +PKER_GWETH( 25, 36) = 0.262172E+00 +PKER_GWETH( 25, 37) = 0.264293E+00 +PKER_GWETH( 25, 38) = 0.266086E+00 +PKER_GWETH( 25, 39) = 0.267604E+00 +PKER_GWETH( 25, 40) = 0.268890E+00 +PKER_GWETH( 26, 1) = 0.378785E+01 +PKER_GWETH( 26, 2) = 0.321039E+01 +PKER_GWETH( 26, 3) = 0.271618E+01 +PKER_GWETH( 26, 4) = 0.229319E+01 +PKER_GWETH( 26, 5) = 0.193113E+01 +PKER_GWETH( 26, 6) = 0.162119E+01 +PKER_GWETH( 26, 7) = 0.135583E+01 +PKER_GWETH( 26, 8) = 0.112861E+01 +PKER_GWETH( 26, 9) = 0.934001E+00 +PKER_GWETH( 26, 10) = 0.767278E+00 +PKER_GWETH( 26, 11) = 0.624411E+00 +PKER_GWETH( 26, 12) = 0.501975E+00 +PKER_GWETH( 26, 13) = 0.397120E+00 +PKER_GWETH( 26, 14) = 0.307602E+00 +PKER_GWETH( 26, 15) = 0.231908E+00 +PKER_GWETH( 26, 16) = 0.169451E+00 +PKER_GWETH( 26, 17) = 0.120682E+00 +PKER_GWETH( 26, 18) = 0.867919E-01 +PKER_GWETH( 26, 19) = 0.686817E-01 +PKER_GWETH( 26, 20) = 0.656399E-01 +PKER_GWETH( 26, 21) = 0.746001E-01 +PKER_GWETH( 26, 22) = 0.908895E-01 +PKER_GWETH( 26, 23) = 0.109940E+00 +PKER_GWETH( 26, 24) = 0.128616E+00 +PKER_GWETH( 26, 25) = 0.145415E+00 +PKER_GWETH( 26, 26) = 0.159926E+00 +PKER_GWETH( 26, 27) = 0.172240E+00 +PKER_GWETH( 26, 28) = 0.182610E+00 +PKER_GWETH( 26, 29) = 0.191313E+00 +PKER_GWETH( 26, 30) = 0.198604E+00 +PKER_GWETH( 26, 31) = 0.204711E+00 +PKER_GWETH( 26, 32) = 0.209827E+00 +PKER_GWETH( 26, 33) = 0.214117E+00 +PKER_GWETH( 26, 34) = 0.217719E+00 +PKER_GWETH( 26, 35) = 0.220748E+00 +PKER_GWETH( 26, 36) = 0.223298E+00 +PKER_GWETH( 26, 37) = 0.225448E+00 +PKER_GWETH( 26, 38) = 0.227264E+00 +PKER_GWETH( 26, 39) = 0.228799E+00 +PKER_GWETH( 26, 40) = 0.230098E+00 +PKER_GWETH( 27, 1) = 0.381769E+01 +PKER_GWETH( 27, 2) = 0.324032E+01 +PKER_GWETH( 27, 3) = 0.274621E+01 +PKER_GWETH( 27, 4) = 0.232333E+01 +PKER_GWETH( 27, 5) = 0.196138E+01 +PKER_GWETH( 27, 6) = 0.165158E+01 +PKER_GWETH( 27, 7) = 0.138637E+01 +PKER_GWETH( 27, 8) = 0.115931E+01 +PKER_GWETH( 27, 9) = 0.964884E+00 +PKER_GWETH( 27, 10) = 0.798361E+00 +PKER_GWETH( 27, 11) = 0.655701E+00 +PKER_GWETH( 27, 12) = 0.533453E+00 +PKER_GWETH( 27, 13) = 0.428689E+00 +PKER_GWETH( 27, 14) = 0.338973E+00 +PKER_GWETH( 27, 15) = 0.262392E+00 +PKER_GWETH( 27, 16) = 0.197665E+00 +PKER_GWETH( 27, 17) = 0.144311E+00 +PKER_GWETH( 27, 18) = 0.102745E+00 +PKER_GWETH( 27, 19) = 0.739790E-01 +PKER_GWETH( 27, 20) = 0.587853E-01 +PKER_GWETH( 27, 21) = 0.564914E-01 +PKER_GWETH( 27, 22) = 0.644148E-01 +PKER_GWETH( 27, 23) = 0.785256E-01 +PKER_GWETH( 27, 24) = 0.949195E-01 +PKER_GWETH( 27, 25) = 0.110944E+00 +PKER_GWETH( 27, 26) = 0.125338E+00 +PKER_GWETH( 27, 27) = 0.137765E+00 +PKER_GWETH( 27, 28) = 0.148309E+00 +PKER_GWETH( 27, 29) = 0.157189E+00 +PKER_GWETH( 27, 30) = 0.164640E+00 +PKER_GWETH( 27, 31) = 0.170884E+00 +PKER_GWETH( 27, 32) = 0.176113E+00 +PKER_GWETH( 27, 33) = 0.180493E+00 +PKER_GWETH( 27, 34) = 0.184167E+00 +PKER_GWETH( 27, 35) = 0.187251E+00 +PKER_GWETH( 27, 36) = 0.189844E+00 +PKER_GWETH( 27, 37) = 0.192027E+00 +PKER_GWETH( 27, 38) = 0.193868E+00 +PKER_GWETH( 27, 39) = 0.195422E+00 +PKER_GWETH( 27, 40) = 0.196736E+00 +PKER_GWETH( 28, 1) = 0.384328E+01 +PKER_GWETH( 28, 2) = 0.326598E+01 +PKER_GWETH( 28, 3) = 0.277194E+01 +PKER_GWETH( 28, 4) = 0.234914E+01 +PKER_GWETH( 28, 5) = 0.198729E+01 +PKER_GWETH( 28, 6) = 0.167758E+01 +PKER_GWETH( 28, 7) = 0.141249E+01 +PKER_GWETH( 28, 8) = 0.118556E+01 +PKER_GWETH( 28, 9) = 0.991272E+00 +PKER_GWETH( 28, 10) = 0.824905E+00 +PKER_GWETH( 28, 11) = 0.682416E+00 +PKER_GWETH( 28, 12) = 0.560344E+00 +PKER_GWETH( 28, 13) = 0.455740E+00 +PKER_GWETH( 28, 14) = 0.366097E+00 +PKER_GWETH( 28, 15) = 0.289336E+00 +PKER_GWETH( 28, 16) = 0.223823E+00 +PKER_GWETH( 28, 17) = 0.168475E+00 +PKER_GWETH( 28, 18) = 0.122898E+00 +PKER_GWETH( 28, 19) = 0.874697E-01 +PKER_GWETH( 28, 20) = 0.630639E-01 +PKER_GWETH( 28, 21) = 0.503212E-01 +PKER_GWETH( 28, 22) = 0.486243E-01 +PKER_GWETH( 28, 23) = 0.556229E-01 +PKER_GWETH( 28, 24) = 0.678429E-01 +PKER_GWETH( 28, 25) = 0.819496E-01 +PKER_GWETH( 28, 26) = 0.956978E-01 +PKER_GWETH( 28, 27) = 0.108031E+00 +PKER_GWETH( 28, 28) = 0.118673E+00 +PKER_GWETH( 28, 29) = 0.127702E+00 +PKER_GWETH( 28, 30) = 0.135305E+00 +PKER_GWETH( 28, 31) = 0.141686E+00 +PKER_GWETH( 28, 32) = 0.147032E+00 +PKER_GWETH( 28, 33) = 0.151509E+00 +PKER_GWETH( 28, 34) = 0.155260E+00 +PKER_GWETH( 28, 35) = 0.158405E+00 +PKER_GWETH( 28, 36) = 0.161046E+00 +PKER_GWETH( 28, 37) = 0.163266E+00 +PKER_GWETH( 28, 38) = 0.165135E+00 +PKER_GWETH( 28, 39) = 0.166711E+00 +PKER_GWETH( 28, 40) = 0.168042E+00 +PKER_GWETH( 29, 1) = 0.386522E+01 +PKER_GWETH( 29, 2) = 0.328797E+01 +PKER_GWETH( 29, 3) = 0.279399E+01 +PKER_GWETH( 29, 4) = 0.237126E+01 +PKER_GWETH( 29, 5) = 0.200948E+01 +PKER_GWETH( 29, 6) = 0.169985E+01 +PKER_GWETH( 29, 7) = 0.143485E+01 +PKER_GWETH( 29, 8) = 0.120801E+01 +PKER_GWETH( 29, 9) = 0.101383E+01 +PKER_GWETH( 29, 10) = 0.847587E+00 +PKER_GWETH( 29, 11) = 0.705230E+00 +PKER_GWETH( 29, 12) = 0.583305E+00 +PKER_GWETH( 29, 13) = 0.478852E+00 +PKER_GWETH( 29, 14) = 0.389344E+00 +PKER_GWETH( 29, 15) = 0.312641E+00 +PKER_GWETH( 29, 16) = 0.246962E+00 +PKER_GWETH( 29, 17) = 0.190919E+00 +PKER_GWETH( 29, 18) = 0.143591E+00 +PKER_GWETH( 29, 19) = 0.104661E+00 +PKER_GWETH( 29, 20) = 0.744639E-01 +PKER_GWETH( 29, 21) = 0.537613E-01 +PKER_GWETH( 29, 22) = 0.430826E-01 +PKER_GWETH( 29, 23) = 0.418582E-01 +PKER_GWETH( 29, 24) = 0.480333E-01 +PKER_GWETH( 29, 25) = 0.586131E-01 +PKER_GWETH( 29, 26) = 0.707504E-01 +PKER_GWETH( 29, 27) = 0.825451E-01 +PKER_GWETH( 29, 28) = 0.931120E-01 +PKER_GWETH( 29, 29) = 0.102226E+00 +PKER_GWETH( 29, 30) = 0.109957E+00 +PKER_GWETH( 29, 31) = 0.116467E+00 +PKER_GWETH( 29, 32) = 0.121931E+00 +PKER_GWETH( 29, 33) = 0.126508E+00 +PKER_GWETH( 29, 34) = 0.130342E+00 +PKER_GWETH( 29, 35) = 0.133554E+00 +PKER_GWETH( 29, 36) = 0.136247E+00 +PKER_GWETH( 29, 37) = 0.138508E+00 +PKER_GWETH( 29, 38) = 0.140409E+00 +PKER_GWETH( 29, 39) = 0.142009E+00 +PKER_GWETH( 29, 40) = 0.143358E+00 +PKER_GWETH( 30, 1) = 0.388404E+01 +PKER_GWETH( 30, 2) = 0.330683E+01 +PKER_GWETH( 30, 3) = 0.281290E+01 +PKER_GWETH( 30, 4) = 0.239021E+01 +PKER_GWETH( 30, 5) = 0.202849E+01 +PKER_GWETH( 30, 6) = 0.171892E+01 +PKER_GWETH( 30, 7) = 0.145399E+01 +PKER_GWETH( 30, 8) = 0.122723E+01 +PKER_GWETH( 30, 9) = 0.103313E+01 +PKER_GWETH( 30, 10) = 0.866978E+00 +PKER_GWETH( 30, 11) = 0.724725E+00 +PKER_GWETH( 30, 12) = 0.602915E+00 +PKER_GWETH( 30, 13) = 0.498586E+00 +PKER_GWETH( 30, 14) = 0.409208E+00 +PKER_GWETH( 30, 15) = 0.332618E+00 +PKER_GWETH( 30, 16) = 0.266986E+00 +PKER_GWETH( 30, 17) = 0.210791E+00 +PKER_GWETH( 30, 18) = 0.162848E+00 +PKER_GWETH( 30, 19) = 0.122380E+00 +PKER_GWETH( 30, 20) = 0.891272E-01 +PKER_GWETH( 30, 21) = 0.633929E-01 +PKER_GWETH( 30, 22) = 0.458362E-01 +PKER_GWETH( 30, 23) = 0.368911E-01 +PKER_GWETH( 30, 24) = 0.360374E-01 +PKER_GWETH( 30, 25) = 0.414816E-01 +PKER_GWETH( 30, 26) = 0.506386E-01 +PKER_GWETH( 30, 27) = 0.610806E-01 +PKER_GWETH( 30, 28) = 0.711985E-01 +PKER_GWETH( 30, 29) = 0.802521E-01 +PKER_GWETH( 30, 30) = 0.880569E-01 +PKER_GWETH( 30, 31) = 0.946768E-01 +PKER_GWETH( 30, 32) = 0.100251E+00 +PKER_GWETH( 30, 33) = 0.104929E+00 +PKER_GWETH( 30, 34) = 0.108849E+00 +PKER_GWETH( 30, 35) = 0.112132E+00 +PKER_GWETH( 30, 36) = 0.114882E+00 +PKER_GWETH( 30, 37) = 0.117188E+00 +PKER_GWETH( 30, 38) = 0.119124E+00 +PKER_GWETH( 30, 39) = 0.120751E+00 +PKER_GWETH( 30, 40) = 0.122121E+00 +PKER_GWETH( 31, 1) = 0.390018E+01 +PKER_GWETH( 31, 2) = 0.332301E+01 +PKER_GWETH( 31, 3) = 0.282911E+01 +PKER_GWETH( 31, 4) = 0.240646E+01 +PKER_GWETH( 31, 5) = 0.204478E+01 +PKER_GWETH( 31, 6) = 0.173527E+01 +PKER_GWETH( 31, 7) = 0.147038E+01 +PKER_GWETH( 31, 8) = 0.124368E+01 +PKER_GWETH( 31, 9) = 0.104965E+01 +PKER_GWETH( 31, 10) = 0.883566E+00 +PKER_GWETH( 31, 11) = 0.741393E+00 +PKER_GWETH( 31, 12) = 0.619671E+00 +PKER_GWETH( 31, 13) = 0.515440E+00 +PKER_GWETH( 31, 14) = 0.426169E+00 +PKER_GWETH( 31, 15) = 0.349690E+00 +PKER_GWETH( 31, 16) = 0.284154E+00 +PKER_GWETH( 31, 17) = 0.227995E+00 +PKER_GWETH( 31, 18) = 0.179915E+00 +PKER_GWETH( 31, 19) = 0.138901E+00 +PKER_GWETH( 31, 20) = 0.104299E+00 +PKER_GWETH( 31, 21) = 0.758983E-01 +PKER_GWETH( 31, 22) = 0.539690E-01 +PKER_GWETH( 31, 23) = 0.390809E-01 +PKER_GWETH( 31, 24) = 0.315930E-01 +PKER_GWETH( 31, 25) = 0.310308E-01 +PKER_GWETH( 31, 26) = 0.358252E-01 +PKER_GWETH( 31, 27) = 0.437487E-01 +PKER_GWETH( 31, 28) = 0.527309E-01 +PKER_GWETH( 31, 29) = 0.614103E-01 +PKER_GWETH( 31, 30) = 0.691670E-01 +PKER_GWETH( 31, 31) = 0.758509E-01 +PKER_GWETH( 31, 32) = 0.815193E-01 +PKER_GWETH( 31, 33) = 0.862925E-01 +PKER_GWETH( 31, 34) = 0.902983E-01 +PKER_GWETH( 31, 35) = 0.936547E-01 +PKER_GWETH( 31, 36) = 0.964655E-01 +PKER_GWETH( 31, 37) = 0.988203E-01 +PKER_GWETH( 31, 38) = 0.100795E+00 +PKER_GWETH( 31, 39) = 0.102452E+00 +PKER_GWETH( 31, 40) = 0.103846E+00 +PKER_GWETH( 32, 1) = 0.391403E+01 +PKER_GWETH( 32, 2) = 0.333689E+01 +PKER_GWETH( 32, 3) = 0.284302E+01 +PKER_GWETH( 32, 4) = 0.242040E+01 +PKER_GWETH( 32, 5) = 0.205875E+01 +PKER_GWETH( 32, 6) = 0.174927E+01 +PKER_GWETH( 32, 7) = 0.148443E+01 +PKER_GWETH( 32, 8) = 0.125777E+01 +PKER_GWETH( 32, 9) = 0.106379E+01 +PKER_GWETH( 32, 10) = 0.897764E+00 +PKER_GWETH( 32, 11) = 0.755651E+00 +PKER_GWETH( 32, 12) = 0.633997E+00 +PKER_GWETH( 32, 13) = 0.529842E+00 +PKER_GWETH( 32, 14) = 0.440655E+00 +PKER_GWETH( 32, 15) = 0.364268E+00 +PKER_GWETH( 32, 16) = 0.298826E+00 +PKER_GWETH( 32, 17) = 0.242749E+00 +PKER_GWETH( 32, 18) = 0.194696E+00 +PKER_GWETH( 32, 19) = 0.153558E+00 +PKER_GWETH( 32, 20) = 0.118474E+00 +PKER_GWETH( 32, 21) = 0.888878E-01 +PKER_GWETH( 32, 22) = 0.646314E-01 +PKER_GWETH( 32, 23) = 0.459466E-01 +PKER_GWETH( 32, 24) = 0.333243E-01 +PKER_GWETH( 32, 25) = 0.270613E-01 +PKER_GWETH( 32, 26) = 0.267227E-01 +PKER_GWETH( 32, 27) = 0.309414E-01 +PKER_GWETH( 32, 28) = 0.377959E-01 +PKER_GWETH( 32, 29) = 0.455211E-01 +PKER_GWETH( 32, 30) = 0.529666E-01 +PKER_GWETH( 32, 31) = 0.596121E-01 +PKER_GWETH( 32, 32) = 0.653361E-01 +PKER_GWETH( 32, 33) = 0.701897E-01 +PKER_GWETH( 32, 34) = 0.742768E-01 +PKER_GWETH( 32, 35) = 0.777069E-01 +PKER_GWETH( 32, 36) = 0.805809E-01 +PKER_GWETH( 32, 37) = 0.829877E-01 +PKER_GWETH( 32, 38) = 0.850040E-01 +PKER_GWETH( 32, 39) = 0.866946E-01 +PKER_GWETH( 32, 40) = 0.881139E-01 +PKER_GWETH( 33, 1) = 0.392592E+01 +PKER_GWETH( 33, 2) = 0.334880E+01 +PKER_GWETH( 33, 3) = 0.285495E+01 +PKER_GWETH( 33, 4) = 0.243235E+01 +PKER_GWETH( 33, 5) = 0.207073E+01 +PKER_GWETH( 33, 6) = 0.176128E+01 +PKER_GWETH( 33, 7) = 0.149647E+01 +PKER_GWETH( 33, 8) = 0.126985E+01 +PKER_GWETH( 33, 9) = 0.107590E+01 +PKER_GWETH( 33, 10) = 0.909920E+00 +PKER_GWETH( 33, 11) = 0.767855E+00 +PKER_GWETH( 33, 12) = 0.646253E+00 +PKER_GWETH( 33, 13) = 0.542157E+00 +PKER_GWETH( 33, 14) = 0.453034E+00 +PKER_GWETH( 33, 15) = 0.376719E+00 +PKER_GWETH( 33, 16) = 0.311356E+00 +PKER_GWETH( 33, 17) = 0.255359E+00 +PKER_GWETH( 33, 18) = 0.207375E+00 +PKER_GWETH( 33, 19) = 0.166259E+00 +PKER_GWETH( 33, 20) = 0.131060E+00 +PKER_GWETH( 33, 21) = 0.101048E+00 +PKER_GWETH( 33, 22) = 0.757518E-01 +PKER_GWETH( 33, 23) = 0.550354E-01 +PKER_GWETH( 33, 24) = 0.391173E-01 +PKER_GWETH( 33, 25) = 0.284177E-01 +PKER_GWETH( 33, 26) = 0.231819E-01 +PKER_GWETH( 33, 27) = 0.230157E-01 +PKER_GWETH( 33, 28) = 0.267246E-01 +PKER_GWETH( 33, 29) = 0.326527E-01 +PKER_GWETH( 33, 30) = 0.392968E-01 +PKER_GWETH( 33, 31) = 0.456828E-01 +PKER_GWETH( 33, 32) = 0.513763E-01 +PKER_GWETH( 33, 33) = 0.562781E-01 +PKER_GWETH( 33, 34) = 0.604341E-01 +PKER_GWETH( 33, 35) = 0.639338E-01 +PKER_GWETH( 33, 36) = 0.668709E-01 +PKER_GWETH( 33, 37) = 0.693318E-01 +PKER_GWETH( 33, 38) = 0.713927E-01 +PKER_GWETH( 33, 39) = 0.731192E-01 +PKER_GWETH( 33, 40) = 0.745668E-01 +PKER_GWETH( 34, 1) = 0.393613E+01 +PKER_GWETH( 34, 2) = 0.335902E+01 +PKER_GWETH( 34, 3) = 0.286518E+01 +PKER_GWETH( 34, 4) = 0.244261E+01 +PKER_GWETH( 34, 5) = 0.208101E+01 +PKER_GWETH( 34, 6) = 0.177158E+01 +PKER_GWETH( 34, 7) = 0.150679E+01 +PKER_GWETH( 34, 8) = 0.128020E+01 +PKER_GWETH( 34, 9) = 0.108628E+01 +PKER_GWETH( 34, 10) = 0.920332E+00 +PKER_GWETH( 34, 11) = 0.778304E+00 +PKER_GWETH( 34, 12) = 0.656742E+00 +PKER_GWETH( 34, 13) = 0.552691E+00 +PKER_GWETH( 34, 14) = 0.463618E+00 +PKER_GWETH( 34, 15) = 0.387358E+00 +PKER_GWETH( 34, 16) = 0.322057E+00 +PKER_GWETH( 34, 17) = 0.266128E+00 +PKER_GWETH( 34, 18) = 0.218213E+00 +PKER_GWETH( 34, 19) = 0.177154E+00 +PKER_GWETH( 34, 20) = 0.141973E+00 +PKER_GWETH( 34, 21) = 0.111857E+00 +PKER_GWETH( 34, 22) = 0.861834E-01 +PKER_GWETH( 34, 23) = 0.645549E-01 +PKER_GWETH( 34, 24) = 0.468637E-01 +PKER_GWETH( 34, 25) = 0.333029E-01 +PKER_GWETH( 34, 26) = 0.242359E-01 +PKER_GWETH( 34, 27) = 0.198623E-01 +PKER_GWETH( 34, 28) = 0.198248E-01 +PKER_GWETH( 34, 29) = 0.230830E-01 +PKER_GWETH( 34, 30) = 0.282089E-01 +PKER_GWETH( 34, 31) = 0.339228E-01 +PKER_GWETH( 34, 32) = 0.393998E-01 +PKER_GWETH( 34, 33) = 0.442776E-01 +PKER_GWETH( 34, 34) = 0.484753E-01 +PKER_GWETH( 34, 35) = 0.520340E-01 +PKER_GWETH( 34, 36) = 0.550307E-01 +PKER_GWETH( 34, 37) = 0.575456E-01 +PKER_GWETH( 34, 38) = 0.596528E-01 +PKER_GWETH( 34, 39) = 0.614176E-01 +PKER_GWETH( 34, 40) = 0.628959E-01 +PKER_GWETH( 35, 1) = 0.394489E+01 +PKER_GWETH( 35, 2) = 0.336779E+01 +PKER_GWETH( 35, 3) = 0.287397E+01 +PKER_GWETH( 35, 4) = 0.245141E+01 +PKER_GWETH( 35, 5) = 0.208983E+01 +PKER_GWETH( 35, 6) = 0.178041E+01 +PKER_GWETH( 35, 7) = 0.151564E+01 +PKER_GWETH( 35, 8) = 0.128907E+01 +PKER_GWETH( 35, 9) = 0.109518E+01 +PKER_GWETH( 35, 10) = 0.929255E+00 +PKER_GWETH( 35, 11) = 0.787254E+00 +PKER_GWETH( 35, 12) = 0.665724E+00 +PKER_GWETH( 35, 13) = 0.561707E+00 +PKER_GWETH( 35, 14) = 0.472673E+00 +PKER_GWETH( 35, 15) = 0.396456E+00 +PKER_GWETH( 35, 16) = 0.331202E+00 +PKER_GWETH( 35, 17) = 0.275326E+00 +PKER_GWETH( 35, 18) = 0.227468E+00 +PKER_GWETH( 35, 19) = 0.186468E+00 +PKER_GWETH( 35, 20) = 0.151336E+00 +PKER_GWETH( 35, 21) = 0.121232E+00 +PKER_GWETH( 35, 22) = 0.954658E-01 +PKER_GWETH( 35, 23) = 0.735038E-01 +PKER_GWETH( 35, 24) = 0.550122E-01 +PKER_GWETH( 35, 25) = 0.399049E-01 +PKER_GWETH( 35, 26) = 0.283536E-01 +PKER_GWETH( 35, 27) = 0.206713E-01 +PKER_GWETH( 35, 28) = 0.170206E-01 +PKER_GWETH( 35, 29) = 0.170782E-01 +PKER_GWETH( 35, 30) = 0.199378E-01 +PKER_GWETH( 35, 31) = 0.243699E-01 +PKER_GWETH( 35, 32) = 0.292827E-01 +PKER_GWETH( 35, 33) = 0.339802E-01 +PKER_GWETH( 35, 34) = 0.381591E-01 +PKER_GWETH( 35, 35) = 0.417538E-01 +PKER_GWETH( 35, 36) = 0.448011E-01 +PKER_GWETH( 35, 37) = 0.473670E-01 +PKER_GWETH( 35, 38) = 0.495205E-01 +PKER_GWETH( 35, 39) = 0.513249E-01 +PKER_GWETH( 35, 40) = 0.528360E-01 +PKER_GWETH( 36, 1) = 0.395241E+01 +PKER_GWETH( 36, 2) = 0.337532E+01 +PKER_GWETH( 36, 3) = 0.288151E+01 +PKER_GWETH( 36, 4) = 0.245896E+01 +PKER_GWETH( 36, 5) = 0.209739E+01 +PKER_GWETH( 36, 6) = 0.178799E+01 +PKER_GWETH( 36, 7) = 0.152324E+01 +PKER_GWETH( 36, 8) = 0.129668E+01 +PKER_GWETH( 36, 9) = 0.110281E+01 +PKER_GWETH( 36, 10) = 0.936903E+00 +PKER_GWETH( 36, 11) = 0.794924E+00 +PKER_GWETH( 36, 12) = 0.673418E+00 +PKER_GWETH( 36, 13) = 0.569428E+00 +PKER_GWETH( 36, 14) = 0.480423E+00 +PKER_GWETH( 36, 15) = 0.404239E+00 +PKER_GWETH( 36, 16) = 0.339022E+00 +PKER_GWETH( 36, 17) = 0.283186E+00 +PKER_GWETH( 36, 18) = 0.235374E+00 +PKER_GWETH( 36, 19) = 0.194423E+00 +PKER_GWETH( 36, 20) = 0.159341E+00 +PKER_GWETH( 36, 21) = 0.129279E+00 +PKER_GWETH( 36, 22) = 0.103521E+00 +PKER_GWETH( 36, 23) = 0.814749E-01 +PKER_GWETH( 36, 24) = 0.626882E-01 +PKER_GWETH( 36, 25) = 0.468787E-01 +PKER_GWETH( 36, 26) = 0.339780E-01 +PKER_GWETH( 36, 27) = 0.241398E-01 +PKER_GWETH( 36, 28) = 0.176327E-01 +PKER_GWETH( 36, 29) = 0.145874E-01 +PKER_GWETH( 36, 30) = 0.147147E-01 +PKER_GWETH( 36, 31) = 0.172211E-01 +PKER_GWETH( 36, 32) = 0.210528E-01 +PKER_GWETH( 36, 33) = 0.252768E-01 +PKER_GWETH( 36, 34) = 0.293056E-01 +PKER_GWETH( 36, 35) = 0.328855E-01 +PKER_GWETH( 36, 36) = 0.359639E-01 +PKER_GWETH( 36, 37) = 0.385732E-01 +PKER_GWETH( 36, 38) = 0.407703E-01 +PKER_GWETH( 36, 39) = 0.426143E-01 +PKER_GWETH( 36, 40) = 0.441594E-01 +PKER_GWETH( 37, 1) = 0.395887E+01 +PKER_GWETH( 37, 2) = 0.338179E+01 +PKER_GWETH( 37, 3) = 0.288799E+01 +PKER_GWETH( 37, 4) = 0.246545E+01 +PKER_GWETH( 37, 5) = 0.210388E+01 +PKER_GWETH( 37, 6) = 0.179450E+01 +PKER_GWETH( 37, 7) = 0.152975E+01 +PKER_GWETH( 37, 8) = 0.130321E+01 +PKER_GWETH( 37, 9) = 0.110935E+01 +PKER_GWETH( 37, 10) = 0.943460E+00 +PKER_GWETH( 37, 11) = 0.801498E+00 +PKER_GWETH( 37, 12) = 0.680011E+00 +PKER_GWETH( 37, 13) = 0.576041E+00 +PKER_GWETH( 37, 14) = 0.487060E+00 +PKER_GWETH( 37, 15) = 0.410901E+00 +PKER_GWETH( 37, 16) = 0.345712E+00 +PKER_GWETH( 37, 17) = 0.289908E+00 +PKER_GWETH( 37, 18) = 0.242130E+00 +PKER_GWETH( 37, 19) = 0.201218E+00 +PKER_GWETH( 37, 20) = 0.166178E+00 +PKER_GWETH( 37, 21) = 0.136159E+00 +PKER_GWETH( 37, 22) = 0.110436E+00 +PKER_GWETH( 37, 23) = 0.883954E-01 +PKER_GWETH( 37, 24) = 0.695332E-01 +PKER_GWETH( 37, 25) = 0.534630E-01 +PKER_GWETH( 37, 26) = 0.399468E-01 +PKER_GWETH( 37, 27) = 0.289314E-01 +PKER_GWETH( 37, 28) = 0.205525E-01 +PKER_GWETH( 37, 29) = 0.150421E-01 +PKER_GWETH( 37, 30) = 0.125040E-01 +PKER_GWETH( 37, 31) = 0.126787E-01 +PKER_GWETH( 37, 32) = 0.148743E-01 +PKER_GWETH( 37, 33) = 0.181871E-01 +PKER_GWETH( 37, 34) = 0.218185E-01 +PKER_GWETH( 37, 35) = 0.252735E-01 +PKER_GWETH( 37, 36) = 0.283403E-01 +PKER_GWETH( 37, 37) = 0.309765E-01 +PKER_GWETH( 37, 38) = 0.332107E-01 +PKER_GWETH( 37, 39) = 0.350921E-01 +PKER_GWETH( 37, 40) = 0.366711E-01 +PKER_GWETH( 38, 1) = 0.396441E+01 +PKER_GWETH( 38, 2) = 0.338734E+01 +PKER_GWETH( 38, 3) = 0.289354E+01 +PKER_GWETH( 38, 4) = 0.247101E+01 +PKER_GWETH( 38, 5) = 0.210946E+01 +PKER_GWETH( 38, 6) = 0.180008E+01 +PKER_GWETH( 38, 7) = 0.153534E+01 +PKER_GWETH( 38, 8) = 0.130881E+01 +PKER_GWETH( 38, 9) = 0.111496E+01 +PKER_GWETH( 38, 10) = 0.949083E+00 +PKER_GWETH( 38, 11) = 0.807135E+00 +PKER_GWETH( 38, 12) = 0.685662E+00 +PKER_GWETH( 38, 13) = 0.581708E+00 +PKER_GWETH( 38, 14) = 0.492744E+00 +PKER_GWETH( 38, 15) = 0.416605E+00 +PKER_GWETH( 38, 16) = 0.351438E+00 +PKER_GWETH( 38, 17) = 0.295658E+00 +PKER_GWETH( 38, 18) = 0.247908E+00 +PKER_GWETH( 38, 19) = 0.207026E+00 +PKER_GWETH( 38, 20) = 0.172018E+00 +PKER_GWETH( 38, 21) = 0.142035E+00 +PKER_GWETH( 38, 22) = 0.116348E+00 +PKER_GWETH( 38, 23) = 0.943377E-01 +PKER_GWETH( 38, 24) = 0.754790E-01 +PKER_GWETH( 38, 25) = 0.593406E-01 +PKER_GWETH( 38, 26) = 0.455943E-01 +PKER_GWETH( 38, 27) = 0.340390E-01 +PKER_GWETH( 38, 28) = 0.246337E-01 +PKER_GWETH( 38, 29) = 0.174989E-01 +PKER_GWETH( 38, 30) = 0.128332E-01 +PKER_GWETH( 38, 31) = 0.107204E-01 +PKER_GWETH( 38, 32) = 0.109262E-01 +PKER_GWETH( 38, 33) = 0.128475E-01 +PKER_GWETH( 38, 34) = 0.157112E-01 +PKER_GWETH( 38, 35) = 0.188328E-01 +PKER_GWETH( 38, 36) = 0.217958E-01 +PKER_GWETH( 38, 37) = 0.244229E-01 +PKER_GWETH( 38, 38) = 0.266804E-01 +PKER_GWETH( 38, 39) = 0.285935E-01 +PKER_GWETH( 38, 40) = 0.302045E-01 +PKER_GWETH( 39, 1) = 0.396918E+01 +PKER_GWETH( 39, 2) = 0.339211E+01 +PKER_GWETH( 39, 3) = 0.289832E+01 +PKER_GWETH( 39, 4) = 0.247579E+01 +PKER_GWETH( 39, 5) = 0.211424E+01 +PKER_GWETH( 39, 6) = 0.180487E+01 +PKER_GWETH( 39, 7) = 0.154014E+01 +PKER_GWETH( 39, 8) = 0.131362E+01 +PKER_GWETH( 39, 9) = 0.111978E+01 +PKER_GWETH( 39, 10) = 0.953907E+00 +PKER_GWETH( 39, 11) = 0.811969E+00 +PKER_GWETH( 39, 12) = 0.690507E+00 +PKER_GWETH( 39, 13) = 0.586566E+00 +PKER_GWETH( 39, 14) = 0.497616E+00 +PKER_GWETH( 39, 15) = 0.421492E+00 +PKER_GWETH( 39, 16) = 0.356342E+00 +PKER_GWETH( 39, 17) = 0.300580E+00 +PKER_GWETH( 39, 18) = 0.252850E+00 +PKER_GWETH( 39, 19) = 0.211991E+00 +PKER_GWETH( 39, 20) = 0.177010E+00 +PKER_GWETH( 39, 21) = 0.147055E+00 +PKER_GWETH( 39, 22) = 0.121399E+00 +PKER_GWETH( 39, 23) = 0.994194E-01 +PKER_GWETH( 39, 24) = 0.805856E-01 +PKER_GWETH( 39, 25) = 0.644491E-01 +PKER_GWETH( 39, 26) = 0.506413E-01 +PKER_GWETH( 39, 27) = 0.388827E-01 +PKER_GWETH( 39, 28) = 0.290042E-01 +PKER_GWETH( 39, 29) = 0.209741E-01 +PKER_GWETH( 39, 30) = 0.148991E-01 +PKER_GWETH( 39, 31) = 0.109496E-01 +PKER_GWETH( 39, 32) = 0.919163E-02 +PKER_GWETH( 39, 33) = 0.941674E-02 +PKER_GWETH( 39, 34) = 0.110979E-01 +PKER_GWETH( 39, 35) = 0.135723E-01 +PKER_GWETH( 39, 36) = 0.162554E-01 +PKER_GWETH( 39, 37) = 0.187961E-01 +PKER_GWETH( 39, 38) = 0.210466E-01 +PKER_GWETH( 39, 39) = 0.229798E-01 +PKER_GWETH( 39, 40) = 0.246180E-01 +PKER_GWETH( 40, 1) = 0.397327E+01 +PKER_GWETH( 40, 2) = 0.339620E+01 +PKER_GWETH( 40, 3) = 0.290242E+01 +PKER_GWETH( 40, 4) = 0.247989E+01 +PKER_GWETH( 40, 5) = 0.211835E+01 +PKER_GWETH( 40, 6) = 0.180898E+01 +PKER_GWETH( 40, 7) = 0.154426E+01 +PKER_GWETH( 40, 8) = 0.131774E+01 +PKER_GWETH( 40, 9) = 0.112391E+01 +PKER_GWETH( 40, 10) = 0.958046E+00 +PKER_GWETH( 40, 11) = 0.816115E+00 +PKER_GWETH( 40, 12) = 0.694662E+00 +PKER_GWETH( 40, 13) = 0.590731E+00 +PKER_GWETH( 40, 14) = 0.501791E+00 +PKER_GWETH( 40, 15) = 0.425679E+00 +PKER_GWETH( 40, 16) = 0.360542E+00 +PKER_GWETH( 40, 17) = 0.304795E+00 +PKER_GWETH( 40, 18) = 0.257081E+00 +PKER_GWETH( 40, 19) = 0.216240E+00 +PKER_GWETH( 40, 20) = 0.181278E+00 +PKER_GWETH( 40, 21) = 0.151345E+00 +PKER_GWETH( 40, 22) = 0.125714E+00 +PKER_GWETH( 40, 23) = 0.103760E+00 +PKER_GWETH( 40, 24) = 0.849530E-01 +PKER_GWETH( 40, 25) = 0.688374E-01 +PKER_GWETH( 40, 26) = 0.550302E-01 +PKER_GWETH( 40, 27) = 0.432166E-01 +PKER_GWETH( 40, 28) = 0.331585E-01 +PKER_GWETH( 40, 29) = 0.247136E-01 +PKER_GWETH( 40, 30) = 0.178579E-01 +PKER_GWETH( 40, 31) = 0.126858E-01 +PKER_GWETH( 40, 32) = 0.934299E-02 +PKER_GWETH( 40, 33) = 0.788297E-02 +PKER_GWETH( 40, 34) = 0.811672E-02 +PKER_GWETH( 40, 35) = 0.958788E-02 +PKER_GWETH( 40, 36) = 0.117243E-01 +PKER_GWETH( 40, 37) = 0.140303E-01 +PKER_GWETH( 40, 38) = 0.162089E-01 +PKER_GWETH( 40, 39) = 0.181368E-01 +PKER_GWETH( 40, 40) = 0.197923E-01 +END IF +! +END SUBROUTINE LIMA_READ_XKER_GWETH diff --git a/src/MNH/lima_read_xker_raccs.f90 b/src/MNH/lima_read_xker_raccs.f90 new file mode 100644 index 0000000000000000000000000000000000000000..d29ce6cb23a171cb064521e7a94b6e9370ab381f --- /dev/null +++ b/src/MNH/lima_read_xker_raccs.f90 @@ -0,0 +1,4951 @@ +!MNH_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +!----------------------------------------------------------------- +!--------------- special set of characters for RCS information +!----------------------------------------------------------------- +! $Source$ $Revision$ +! MASDEV4_7 init 2006/05/18 13:07:25 +!----------------------------------------------------------------- +! ########################### + MODULE MODI_LIMA_READ_XKER_RACCS +! ########################### +! +INTERFACE + SUBROUTINE LIMA_READ_XKER_RACCS (KACCLBDAS,KACCLBDAR,KND, & + PALPHAS,PNUS,PALPHAR,PNUR,PESR,PBS,PBR,PCS,PDS,PCR,PDR, & + PACCLBDAS_MAX,PACCLBDAR_MAX,PACCLBDAS_MIN,PACCLBDAR_MIN, & + PFDINFTY,PKER_RACCSS,PKER_RACCS,PKER_SACCRG ) +! +INTEGER, INTENT(OUT) :: KND,KACCLBDAS,KACCLBDAR +REAL, INTENT(OUT) :: PALPHAS +REAL, INTENT(OUT) :: PNUS +REAL, INTENT(OUT) :: PALPHAR +REAL, INTENT(OUT) :: PNUR +REAL, INTENT(OUT) :: PESR +REAL, INTENT(OUT) :: PBS +REAL, INTENT(OUT) :: PBR +REAL, INTENT(OUT) :: PCS +REAL, INTENT(OUT) :: PDS +REAL, INTENT(OUT) :: PCR +REAL, INTENT(OUT) :: PDR +REAL, INTENT(OUT) :: PACCLBDAS_MAX +REAL, INTENT(OUT) :: PACCLBDAR_MAX +REAL, INTENT(OUT) :: PACCLBDAS_MIN +REAL, INTENT(OUT) :: PACCLBDAR_MIN +REAL, INTENT(OUT) :: PFDINFTY +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_RACCSS +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_RACCS +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_SACCRG +! +END SUBROUTINE LIMA_READ_XKER_RACCS +! +END INTERFACE +! +END MODULE MODI_LIMA_READ_XKER_RACCS +! ########################################################################## + SUBROUTINE LIMA_READ_XKER_RACCS (KACCLBDAS,KACCLBDAR,KND, & + PALPHAS,PNUS,PALPHAR,PNUR,PESR,PBS,PBR,PCS,PDS,PCR,PDR, & + PACCLBDAS_MAX,PACCLBDAR_MAX,PACCLBDAS_MIN,PACCLBDAR_MIN, & + PFDINFTY,PKER_RACCSS,PKER_RACCS,PKER_SACCRG ) +! ########################################################################## +! +!!**** * * - initialize the kernels for the rain-snow accretion process +!! +!! PURPOSE +!! ------- +!! The purpose of this routine is to initialize the kernels PKER_RACCSS, +!! PKER_RACCS and PKER_SACCRG prepared from a previous run of the routine +!! INI_RAIN_ICE. The reading of the kernels is optional after checking for +!! the dimensions of the arrays. +!! +!!** METHOD +!! ------ +!! +!! +!! EXTERNAL +!! -------- +!! None +!! +!! +!! IMPLICIT ARGUMENTS +!! ------------------ +!! None +!! +!! REFERENCE +!! --------- +!! Book2 of documentation ( routine READ_XKER_RACCS ) +!! +!! AUTHOR +!! ------ +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original 09/04/96 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +!* 0.2 Declarations of local variables : +! +! +INTEGER, INTENT(OUT) :: KND,KACCLBDAS,KACCLBDAR +REAL, INTENT(OUT) :: PALPHAS +REAL, INTENT(OUT) :: PNUS +REAL, INTENT(OUT) :: PALPHAR +REAL, INTENT(OUT) :: PNUR +REAL, INTENT(OUT) :: PESR +REAL, INTENT(OUT) :: PBS +REAL, INTENT(OUT) :: PBR +REAL, INTENT(OUT) :: PCS +REAL, INTENT(OUT) :: PDS +REAL, INTENT(OUT) :: PCR +REAL, INTENT(OUT) :: PDR +REAL, INTENT(OUT) :: PACCLBDAS_MAX +REAL, INTENT(OUT) :: PACCLBDAR_MAX +REAL, INTENT(OUT) :: PACCLBDAS_MIN +REAL, INTENT(OUT) :: PACCLBDAR_MIN +REAL, INTENT(OUT) :: PFDINFTY +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_RACCSS +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_RACCS +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_SACCRG +! +! ################################################################### +! #INSERT HERE THE OUTPUT OF INI_RAIN_ICE IF THE KERNELS ARE UPDATED# +! ################################################################### +! +KND= 50 +KACCLBDAS= 40 +KACCLBDAR= 40 +PALPHAS= 0.100000E+01 +PNUS= 0.100000E+01 +PALPHAR= 0.100000E+01 +PNUR= 0.200000E+01 +PESR= 0.100000E+01 +PBS= 0.190000E+01 +PBR= 0.300000E+01 +PCS= 0.500000E+01 +PDS= 0.270000E+00 +PCR= 0.842000E+03 +PDR= 0.800000E+00 +PACCLBDAS_MAX= 0.500000E+06 +PACCLBDAR_MAX= 0.100000E+08 +PACCLBDAS_MIN= 0.500000E+02 +PACCLBDAR_MIN= 0.100000E+04 +PFDINFTY= 0.200000E+02 +! +IF( PRESENT(PKER_RACCSS) ) THEN + PKER_RACCSS( 1, 1) = 0.814109E+01 + PKER_RACCSS( 1, 2) = 0.692586E+01 + PKER_RACCSS( 1, 3) = 0.565192E+01 + PKER_RACCSS( 1, 4) = 0.444434E+01 + PKER_RACCSS( 1, 5) = 0.337172E+01 + PKER_RACCSS( 1, 6) = 0.246569E+01 + PKER_RACCSS( 1, 7) = 0.173757E+01 + PKER_RACCSS( 1, 8) = 0.119489E+01 + PKER_RACCSS( 1, 9) = 0.847828E+00 + PKER_RACCSS( 1, 10) = 0.697256E+00 + PKER_RACCSS( 1, 11) = 0.717816E+00 + PKER_RACCSS( 1, 12) = 0.854882E+00 + PKER_RACCSS( 1, 13) = 0.104470E+01 + PKER_RACCSS( 1, 14) = 0.123807E+01 + PKER_RACCSS( 1, 15) = 0.141081E+01 + PKER_RACCSS( 1, 16) = 0.155700E+01 + PKER_RACCSS( 1, 17) = 0.167856E+01 + PKER_RACCSS( 1, 18) = 0.177921E+01 + PKER_RACCSS( 1, 19) = 0.186250E+01 + PKER_RACCSS( 1, 20) = 0.193142E+01 + PKER_RACCSS( 1, 21) = 0.198845E+01 + PKER_RACCSS( 1, 22) = 0.203565E+01 + PKER_RACCSS( 1, 23) = 0.207472E+01 + PKER_RACCSS( 1, 24) = 0.210705E+01 + PKER_RACCSS( 1, 25) = 0.213381E+01 + PKER_RACCSS( 1, 26) = 0.215596E+01 + PKER_RACCSS( 1, 27) = 0.217429E+01 + PKER_RACCSS( 1, 28) = 0.218947E+01 + PKER_RACCSS( 1, 29) = 0.220203E+01 + PKER_RACCSS( 1, 30) = 0.221243E+01 + PKER_RACCSS( 1, 31) = 0.222103E+01 + PKER_RACCSS( 1, 32) = 0.222816E+01 + PKER_RACCSS( 1, 33) = 0.223406E+01 + PKER_RACCSS( 1, 34) = 0.223894E+01 + PKER_RACCSS( 1, 35) = 0.224298E+01 + PKER_RACCSS( 1, 36) = 0.224632E+01 + PKER_RACCSS( 1, 37) = 0.224909E+01 + PKER_RACCSS( 1, 38) = 0.225138E+01 + PKER_RACCSS( 1, 39) = 0.225328E+01 + PKER_RACCSS( 1, 40) = 0.225485E+01 + PKER_RACCSS( 2, 1) = 0.731793E+01 + PKER_RACCSS( 2, 2) = 0.650784E+01 + PKER_RACCSS( 2, 3) = 0.549484E+01 + PKER_RACCSS( 2, 4) = 0.443777E+01 + PKER_RACCSS( 2, 5) = 0.344045E+01 + PKER_RACCSS( 2, 6) = 0.256167E+01 + PKER_RACCSS( 2, 7) = 0.183252E+01 + PKER_RACCSS( 2, 8) = 0.126978E+01 + PKER_RACCSS( 2, 9) = 0.884187E+00 + PKER_RACCSS( 2, 10) = 0.682228E+00 + PKER_RACCSS( 2, 11) = 0.651607E+00 + PKER_RACCSS( 2, 12) = 0.749498E+00 + PKER_RACCSS( 2, 13) = 0.917050E+00 + PKER_RACCSS( 2, 14) = 0.110111E+01 + PKER_RACCSS( 2, 15) = 0.127111E+01 + PKER_RACCSS( 2, 16) = 0.141681E+01 + PKER_RACCSS( 2, 17) = 0.153841E+01 + PKER_RACCSS( 2, 18) = 0.163915E+01 + PKER_RACCSS( 2, 19) = 0.172252E+01 + PKER_RACCSS( 2, 20) = 0.179149E+01 + PKER_RACCSS( 2, 21) = 0.184857E+01 + PKER_RACCSS( 2, 22) = 0.189580E+01 + PKER_RACCSS( 2, 23) = 0.193488E+01 + PKER_RACCSS( 2, 24) = 0.196723E+01 + PKER_RACCSS( 2, 25) = 0.199401E+01 + PKER_RACCSS( 2, 26) = 0.201617E+01 + PKER_RACCSS( 2, 27) = 0.203451E+01 + PKER_RACCSS( 2, 28) = 0.204969E+01 + PKER_RACCSS( 2, 29) = 0.206226E+01 + PKER_RACCSS( 2, 30) = 0.207266E+01 + PKER_RACCSS( 2, 31) = 0.208127E+01 + PKER_RACCSS( 2, 32) = 0.208839E+01 + PKER_RACCSS( 2, 33) = 0.209429E+01 + PKER_RACCSS( 2, 34) = 0.209918E+01 + PKER_RACCSS( 2, 35) = 0.210322E+01 + PKER_RACCSS( 2, 36) = 0.210656E+01 + PKER_RACCSS( 2, 37) = 0.210933E+01 + PKER_RACCSS( 2, 38) = 0.211163E+01 + PKER_RACCSS( 2, 39) = 0.211352E+01 + PKER_RACCSS( 2, 40) = 0.211509E+01 + PKER_RACCSS( 3, 1) = 0.620923E+01 + PKER_RACCSS( 3, 2) = 0.585074E+01 + PKER_RACCSS( 3, 3) = 0.516881E+01 + PKER_RACCSS( 3, 4) = 0.432464E+01 + PKER_RACCSS( 3, 5) = 0.344908E+01 + PKER_RACCSS( 3, 6) = 0.262906E+01 + PKER_RACCSS( 3, 7) = 0.191653E+01 + PKER_RACCSS( 3, 8) = 0.134324E+01 + PKER_RACCSS( 3, 9) = 0.929224E+00 + PKER_RACCSS( 3, 10) = 0.684394E+00 + PKER_RACCSS( 3, 11) = 0.605038E+00 + PKER_RACCSS( 3, 12) = 0.661387E+00 + PKER_RACCSS( 3, 13) = 0.802622E+00 + PKER_RACCSS( 3, 14) = 0.974479E+00 + PKER_RACCSS( 3, 15) = 0.114040E+01 + PKER_RACCSS( 3, 16) = 0.128524E+01 + PKER_RACCSS( 3, 17) = 0.140682E+01 + PKER_RACCSS( 3, 18) = 0.150766E+01 + PKER_RACCSS( 3, 19) = 0.159112E+01 + PKER_RACCSS( 3, 20) = 0.166016E+01 + PKER_RACCSS( 3, 21) = 0.171729E+01 + PKER_RACCSS( 3, 22) = 0.176455E+01 + PKER_RACCSS( 3, 23) = 0.180367E+01 + PKER_RACCSS( 3, 24) = 0.183604E+01 + PKER_RACCSS( 3, 25) = 0.186283E+01 + PKER_RACCSS( 3, 26) = 0.188500E+01 + PKER_RACCSS( 3, 27) = 0.190335E+01 + PKER_RACCSS( 3, 28) = 0.191854E+01 + PKER_RACCSS( 3, 29) = 0.193111E+01 + PKER_RACCSS( 3, 30) = 0.194152E+01 + PKER_RACCSS( 3, 31) = 0.195013E+01 + PKER_RACCSS( 3, 32) = 0.195726E+01 + PKER_RACCSS( 3, 33) = 0.196316E+01 + PKER_RACCSS( 3, 34) = 0.196805E+01 + PKER_RACCSS( 3, 35) = 0.197209E+01 + PKER_RACCSS( 3, 36) = 0.197544E+01 + PKER_RACCSS( 3, 37) = 0.197821E+01 + PKER_RACCSS( 3, 38) = 0.198050E+01 + PKER_RACCSS( 3, 39) = 0.198240E+01 + PKER_RACCSS( 3, 40) = 0.198397E+01 + PKER_RACCSS( 4, 1) = 0.489412E+01 + PKER_RACCSS( 4, 2) = 0.496003E+01 + PKER_RACCSS( 4, 3) = 0.464691E+01 + PKER_RACCSS( 4, 4) = 0.407266E+01 + PKER_RACCSS( 4, 5) = 0.337005E+01 + PKER_RACCSS( 4, 6) = 0.264746E+01 + PKER_RACCSS( 4, 7) = 0.197888E+01 + PKER_RACCSS( 4, 8) = 0.141145E+01 + PKER_RACCSS( 4, 9) = 0.977676E+00 + PKER_RACCSS( 4, 10) = 0.697624E+00 + PKER_RACCSS( 4, 11) = 0.574725E+00 + PKER_RACCSS( 4, 12) = 0.590243E+00 + PKER_RACCSS( 4, 13) = 0.701865E+00 + PKER_RACCSS( 4, 14) = 0.858232E+00 + PKER_RACCSS( 4, 15) = 0.101841E+01 + PKER_RACCSS( 4, 16) = 0.116181E+01 + PKER_RACCSS( 4, 17) = 0.128324E+01 + PKER_RACCSS( 4, 18) = 0.138420E+01 + PKER_RACCSS( 4, 19) = 0.146776E+01 + PKER_RACCSS( 4, 20) = 0.153689E+01 + PKER_RACCSS( 4, 21) = 0.159407E+01 + PKER_RACCSS( 4, 22) = 0.164139E+01 + PKER_RACCSS( 4, 23) = 0.168054E+01 + PKER_RACCSS( 4, 24) = 0.171293E+01 + PKER_RACCSS( 4, 25) = 0.173974E+01 + PKER_RACCSS( 4, 26) = 0.176193E+01 + PKER_RACCSS( 4, 27) = 0.178029E+01 + PKER_RACCSS( 4, 28) = 0.179549E+01 + PKER_RACCSS( 4, 29) = 0.180807E+01 + PKER_RACCSS( 4, 30) = 0.181848E+01 + PKER_RACCSS( 4, 31) = 0.182709E+01 + PKER_RACCSS( 4, 32) = 0.183423E+01 + PKER_RACCSS( 4, 33) = 0.184013E+01 + PKER_RACCSS( 4, 34) = 0.184502E+01 + PKER_RACCSS( 4, 35) = 0.184906E+01 + PKER_RACCSS( 4, 36) = 0.185241E+01 + PKER_RACCSS( 4, 37) = 0.185518E+01 + PKER_RACCSS( 4, 38) = 0.185747E+01 + PKER_RACCSS( 4, 39) = 0.185937E+01 + PKER_RACCSS( 4, 40) = 0.186094E+01 + PKER_RACCSS( 5, 1) = 0.352472E+01 + PKER_RACCSS( 5, 2) = 0.390184E+01 + PKER_RACCSS( 5, 3) = 0.393452E+01 + PKER_RACCSS( 5, 4) = 0.366051E+01 + PKER_RACCSS( 5, 5) = 0.317719E+01 + PKER_RACCSS( 5, 6) = 0.259404E+01 + PKER_RACCSS( 5, 7) = 0.200191E+01 + PKER_RACCSS( 5, 8) = 0.146469E+01 + PKER_RACCSS( 5, 9) = 0.102673E+01 + PKER_RACCSS( 5, 10) = 0.718755E+00 + PKER_RACCSS( 5, 11) = 0.556693E+00 + PKER_RACCSS( 5, 12) = 0.533409E+00 + PKER_RACCSS( 5, 13) = 0.614372E+00 + PKER_RACCSS( 5, 14) = 0.752546E+00 + PKER_RACCSS( 5, 15) = 0.904981E+00 + PKER_RACCSS( 5, 16) = 0.104611E+01 + PKER_RACCSS( 5, 17) = 0.116720E+01 + PKER_RACCSS( 5, 18) = 0.126824E+01 + PKER_RACCSS( 5, 19) = 0.135194E+01 + PKER_RACCSS( 5, 20) = 0.142116E+01 + PKER_RACCSS( 5, 21) = 0.147842E+01 + PKER_RACCSS( 5, 22) = 0.152579E+01 + PKER_RACCSS( 5, 23) = 0.156498E+01 + PKER_RACCSS( 5, 24) = 0.159741E+01 + PKER_RACCSS( 5, 25) = 0.162424E+01 + PKER_RACCSS( 5, 26) = 0.164644E+01 + PKER_RACCSS( 5, 27) = 0.166482E+01 + PKER_RACCSS( 5, 28) = 0.168003E+01 + PKER_RACCSS( 5, 29) = 0.169261E+01 + PKER_RACCSS( 5, 30) = 0.170303E+01 + PKER_RACCSS( 5, 31) = 0.171165E+01 + PKER_RACCSS( 5, 32) = 0.171879E+01 + PKER_RACCSS( 5, 33) = 0.172469E+01 + PKER_RACCSS( 5, 34) = 0.172958E+01 + PKER_RACCSS( 5, 35) = 0.173363E+01 + PKER_RACCSS( 5, 36) = 0.173698E+01 + PKER_RACCSS( 5, 37) = 0.173975E+01 + PKER_RACCSS( 5, 38) = 0.174205E+01 + PKER_RACCSS( 5, 39) = 0.174395E+01 + PKER_RACCSS( 5, 40) = 0.174552E+01 + PKER_RACCSS( 6, 1) = 0.228210E+01 + PKER_RACCSS( 6, 2) = 0.280066E+01 + PKER_RACCSS( 6, 3) = 0.308657E+01 + PKER_RACCSS( 6, 4) = 0.309355E+01 + PKER_RACCSS( 6, 5) = 0.285370E+01 + PKER_RACCSS( 6, 6) = 0.244776E+01 + PKER_RACCSS( 6, 7) = 0.196661E+01 + PKER_RACCSS( 6, 8) = 0.148740E+01 + PKER_RACCSS( 6, 9) = 0.106708E+01 + PKER_RACCSS( 6, 10) = 0.746205E+00 + PKER_RACCSS( 6, 11) = 0.551114E+00 + PKER_RACCSS( 6, 12) = 0.488949E+00 + PKER_RACCSS( 6, 13) = 0.538117E+00 + PKER_RACCSS( 6, 14) = 0.656577E+00 + PKER_RACCSS( 6, 15) = 0.799740E+00 + PKER_RACCSS( 6, 16) = 0.937749E+00 + PKER_RACCSS( 6, 17) = 0.105821E+01 + PKER_RACCSS( 6, 18) = 0.115932E+01 + PKER_RACCSS( 6, 19) = 0.124316E+01 + PKER_RACCSS( 6, 20) = 0.131250E+01 + PKER_RACCSS( 6, 21) = 0.136985E+01 + PKER_RACCSS( 6, 22) = 0.141729E+01 + PKER_RACCSS( 6, 23) = 0.145653E+01 + PKER_RACCSS( 6, 24) = 0.148899E+01 + PKER_RACCSS( 6, 25) = 0.151585E+01 + PKER_RACCSS( 6, 26) = 0.153808E+01 + PKER_RACCSS( 6, 27) = 0.155647E+01 + PKER_RACCSS( 6, 28) = 0.157169E+01 + PKER_RACCSS( 6, 29) = 0.158429E+01 + PKER_RACCSS( 6, 30) = 0.159471E+01 + PKER_RACCSS( 6, 31) = 0.160334E+01 + PKER_RACCSS( 6, 32) = 0.161048E+01 + PKER_RACCSS( 6, 33) = 0.161639E+01 + PKER_RACCSS( 6, 34) = 0.162128E+01 + PKER_RACCSS( 6, 35) = 0.162533E+01 + PKER_RACCSS( 6, 36) = 0.162868E+01 + PKER_RACCSS( 6, 37) = 0.163145E+01 + PKER_RACCSS( 6, 38) = 0.163375E+01 + PKER_RACCSS( 6, 39) = 0.163565E+01 + PKER_RACCSS( 6, 40) = 0.163722E+01 + PKER_RACCSS( 7, 1) = 0.148782E+01 + PKER_RACCSS( 7, 2) = 0.200771E+01 + PKER_RACCSS( 7, 3) = 0.220555E+01 + PKER_RACCSS( 7, 4) = 0.241780E+01 + PKER_RACCSS( 7, 5) = 0.240508E+01 + PKER_RACCSS( 7, 6) = 0.219547E+01 + PKER_RACCSS( 7, 7) = 0.185621E+01 + PKER_RACCSS( 7, 8) = 0.146365E+01 + PKER_RACCSS( 7, 9) = 0.108448E+01 + PKER_RACCSS( 7, 10) = 0.770204E+00 + PKER_RACCSS( 7, 11) = 0.556115E+00 + PKER_RACCSS( 7, 12) = 0.459612E+00 + PKER_RACCSS( 7, 13) = 0.474417E+00 + PKER_RACCSS( 7, 14) = 0.568754E+00 + PKER_RACCSS( 7, 15) = 0.700250E+00 + PKER_RACCSS( 7, 16) = 0.834630E+00 + PKER_RACCSS( 7, 17) = 0.954778E+00 + PKER_RACCSS( 7, 18) = 0.105642E+01 + PKER_RACCSS( 7, 19) = 0.114078E+01 + PKER_RACCSS( 7, 20) = 0.121042E+01 + PKER_RACCSS( 7, 21) = 0.126792E+01 + PKER_RACCSS( 7, 22) = 0.131544E+01 + PKER_RACCSS( 7, 23) = 0.135474E+01 + PKER_RACCSS( 7, 24) = 0.138724E+01 + PKER_RACCSS( 7, 25) = 0.141414E+01 + PKER_RACCSS( 7, 26) = 0.143639E+01 + PKER_RACCSS( 7, 27) = 0.145480E+01 + PKER_RACCSS( 7, 28) = 0.147003E+01 + PKER_RACCSS( 7, 29) = 0.148264E+01 + PKER_RACCSS( 7, 30) = 0.149307E+01 + PKER_RACCSS( 7, 31) = 0.150171E+01 + PKER_RACCSS( 7, 32) = 0.150885E+01 + PKER_RACCSS( 7, 33) = 0.151477E+01 + PKER_RACCSS( 7, 34) = 0.151966E+01 + PKER_RACCSS( 7, 35) = 0.152372E+01 + PKER_RACCSS( 7, 36) = 0.152707E+01 + PKER_RACCSS( 7, 37) = 0.152984E+01 + PKER_RACCSS( 7, 38) = 0.153214E+01 + PKER_RACCSS( 7, 39) = 0.153404E+01 + PKER_RACCSS( 7, 40) = 0.153562E+01 + PKER_RACCSS( 8, 1) = 0.262435E+01 + PKER_RACCSS( 8, 2) = 0.238666E+01 + PKER_RACCSS( 8, 3) = 0.233673E+01 + PKER_RACCSS( 8, 4) = 0.234057E+01 + PKER_RACCSS( 8, 5) = 0.228742E+01 + PKER_RACCSS( 8, 6) = 0.212164E+01 + PKER_RACCSS( 8, 7) = 0.184665E+01 + PKER_RACCSS( 8, 8) = 0.150391E+01 + PKER_RACCSS( 8, 9) = 0.114827E+01 + PKER_RACCSS( 8, 10) = 0.831674E+00 + PKER_RACCSS( 8, 11) = 0.595148E+00 + PKER_RACCSS( 8, 12) = 0.463804E+00 + PKER_RACCSS( 8, 13) = 0.440716E+00 + PKER_RACCSS( 8, 14) = 0.503716E+00 + PKER_RACCSS( 8, 15) = 0.616434E+00 + PKER_RACCSS( 8, 16) = 0.742493E+00 + PKER_RACCSS( 8, 17) = 0.859895E+00 + PKER_RACCSS( 8, 18) = 0.960763E+00 + PKER_RACCSS( 8, 19) = 0.104493E+01 + PKER_RACCSS( 8, 20) = 0.111460E+01 + PKER_RACCSS( 8, 21) = 0.117219E+01 + PKER_RACCSS( 8, 22) = 0.121981E+01 + PKER_RACCSS( 8, 23) = 0.125918E+01 + PKER_RACCSS( 8, 24) = 0.129174E+01 + PKER_RACCSS( 8, 25) = 0.131868E+01 + PKER_RACCSS( 8, 26) = 0.134096E+01 + PKER_RACCSS( 8, 27) = 0.135939E+01 + PKER_RACCSS( 8, 28) = 0.137465E+01 + PKER_RACCSS( 8, 29) = 0.138727E+01 + PKER_RACCSS( 8, 30) = 0.139771E+01 + PKER_RACCSS( 8, 31) = 0.140635E+01 + PKER_RACCSS( 8, 32) = 0.141350E+01 + PKER_RACCSS( 8, 33) = 0.141942E+01 + PKER_RACCSS( 8, 34) = 0.142432E+01 + PKER_RACCSS( 8, 35) = 0.142838E+01 + PKER_RACCSS( 8, 36) = 0.143173E+01 + PKER_RACCSS( 8, 37) = 0.143451E+01 + PKER_RACCSS( 8, 38) = 0.143681E+01 + PKER_RACCSS( 8, 39) = 0.143871E+01 + PKER_RACCSS( 8, 40) = 0.144029E+01 + PKER_RACCSS( 9, 1) = 0.258564E+01 + PKER_RACCSS( 9, 2) = 0.212607E+01 + PKER_RACCSS( 9, 3) = 0.191008E+01 + PKER_RACCSS( 9, 4) = 0.184553E+01 + PKER_RACCSS( 9, 5) = 0.182496E+01 + PKER_RACCSS( 9, 6) = 0.176067E+01 + PKER_RACCSS( 9, 7) = 0.160989E+01 + PKER_RACCSS( 9, 8) = 0.137709E+01 + PKER_RACCSS( 9, 9) = 0.109833E+01 + PKER_RACCSS( 9, 10) = 0.821651E+00 + PKER_RACCSS( 9, 11) = 0.593004E+00 + PKER_RACCSS( 9, 12) = 0.447502E+00 + PKER_RACCSS( 9, 13) = 0.400378E+00 + PKER_RACCSS( 9, 14) = 0.440619E+00 + PKER_RACCSS( 9, 15) = 0.537296E+00 + PKER_RACCSS( 9, 16) = 0.655296E+00 + PKER_RACCSS( 9, 17) = 0.769925E+00 + PKER_RACCSS( 9, 18) = 0.870332E+00 + PKER_RACCSS( 9, 19) = 0.954640E+00 + PKER_RACCSS( 9, 20) = 0.102452E+01 + PKER_RACCSS( 9, 21) = 0.108227E+01 + PKER_RACCSS( 9, 22) = 0.113001E+01 + PKER_RACCSS( 9, 23) = 0.116947E+01 + PKER_RACCSS( 9, 24) = 0.120209E+01 + PKER_RACCSS( 9, 25) = 0.122908E+01 + PKER_RACCSS( 9, 26) = 0.125140E+01 + PKER_RACCSS( 9, 27) = 0.126986E+01 + PKER_RACCSS( 9, 28) = 0.128513E+01 + PKER_RACCSS( 9, 29) = 0.129777E+01 + PKER_RACCSS( 9, 30) = 0.130823E+01 + PKER_RACCSS( 9, 31) = 0.131688E+01 + PKER_RACCSS( 9, 32) = 0.132404E+01 + PKER_RACCSS( 9, 33) = 0.132996E+01 + PKER_RACCSS( 9, 34) = 0.133487E+01 + PKER_RACCSS( 9, 35) = 0.133892E+01 + PKER_RACCSS( 9, 36) = 0.134228E+01 + PKER_RACCSS( 9, 37) = 0.134506E+01 + PKER_RACCSS( 9, 38) = 0.134736E+01 + PKER_RACCSS( 9, 39) = 0.134927E+01 + PKER_RACCSS( 9, 40) = 0.135084E+01 + PKER_RACCSS( 10, 1) = 0.326941E+01 + PKER_RACCSS( 10, 2) = 0.247738E+01 + PKER_RACCSS( 10, 3) = 0.198894E+01 + PKER_RACCSS( 10, 4) = 0.173769E+01 + PKER_RACCSS( 10, 5) = 0.163096E+01 + PKER_RACCSS( 10, 6) = 0.156919E+01 + PKER_RACCSS( 10, 7) = 0.147478E+01 + PKER_RACCSS( 10, 8) = 0.119527E+01 + PKER_RACCSS( 10, 9) = 0.100108E+01 + PKER_RACCSS( 10, 10) = 0.781320E+00 + PKER_RACCSS( 10, 11) = 0.578296E+00 + PKER_RACCSS( 10, 12) = 0.430609E+00 + PKER_RACCSS( 10, 13) = 0.363116E+00 + PKER_RACCSS( 10, 14) = 0.377933E+00 + PKER_RACCSS( 10, 15) = 0.453999E+00 + PKER_RACCSS( 10, 16) = 0.559195E+00 + PKER_RACCSS( 10, 17) = 0.666791E+00 + PKER_RACCSS( 10, 18) = 0.764030E+00 + PKER_RACCSS( 10, 19) = 0.848611E+00 + PKER_RACCSS( 10, 20) = 0.922036E+00 + PKER_RACCSS( 10, 21) = 0.985589E+00 + PKER_RACCSS( 10, 22) = 0.103929E+01 + PKER_RACCSS( 10, 23) = 0.108289E+01 + PKER_RACCSS( 10, 24) = 0.111739E+01 + PKER_RACCSS( 10, 25) = 0.114490E+01 + PKER_RACCSS( 10, 26) = 0.116733E+01 + PKER_RACCSS( 10, 27) = 0.118583E+01 + PKER_RACCSS( 10, 28) = 0.120113E+01 + PKER_RACCSS( 10, 29) = 0.121379E+01 + PKER_RACCSS( 10, 30) = 0.122426E+01 + PKER_RACCSS( 10, 31) = 0.123292E+01 + PKER_RACCSS( 10, 32) = 0.124009E+01 + PKER_RACCSS( 10, 33) = 0.124602E+01 + PKER_RACCSS( 10, 34) = 0.125093E+01 + PKER_RACCSS( 10, 35) = 0.125500E+01 + PKER_RACCSS( 10, 36) = 0.125836E+01 + PKER_RACCSS( 10, 37) = 0.126114E+01 + PKER_RACCSS( 10, 38) = 0.126344E+01 + PKER_RACCSS( 10, 39) = 0.126535E+01 + PKER_RACCSS( 10, 40) = 0.126692E+01 + PKER_RACCSS( 11, 1) = 0.540047E+01 + PKER_RACCSS( 11, 2) = 0.406788E+01 + PKER_RACCSS( 11, 3) = 0.307616E+01 + PKER_RACCSS( 11, 4) = 0.238233E+01 + PKER_RACCSS( 11, 5) = 0.192893E+01 + PKER_RACCSS( 11, 6) = 0.164024E+01 + PKER_RACCSS( 11, 7) = 0.143525E+01 + PKER_RACCSS( 11, 8) = 0.124898E+01 + PKER_RACCSS( 11, 9) = 0.104781E+01 + PKER_RACCSS( 11, 10) = 0.832136E+00 + PKER_RACCSS( 11, 11) = 0.625559E+00 + PKER_RACCSS( 11, 12) = 0.461096E+00 + PKER_RACCSS( 11, 13) = 0.367093E+00 + PKER_RACCSS( 11, 14) = 0.353793E+00 + PKER_RACCSS( 11, 15) = 0.408329E+00 + PKER_RACCSS( 11, 16) = 0.502430E+00 + PKER_RACCSS( 11, 17) = 0.607438E+00 + PKER_RACCSS( 11, 18) = 0.705454E+00 + PKER_RACCSS( 11, 19) = 0.789792E+00 + PKER_RACCSS( 11, 20) = 0.860149E+00 + PKER_RACCSS( 11, 21) = 0.918336E+00 + PKER_RACCSS( 11, 22) = 0.966393E+00 + PKER_RACCSS( 11, 23) = 0.100609E+01 + PKER_RACCSS( 11, 24) = 0.103890E+01 + PKER_RACCSS( 11, 25) = 0.106601E+01 + PKER_RACCSS( 11, 26) = 0.108843E+01 + PKER_RACCSS( 11, 27) = 0.110696E+01 + PKER_RACCSS( 11, 28) = 0.112230E+01 + PKER_RACCSS( 11, 29) = 0.113498E+01 + PKER_RACCSS( 11, 30) = 0.114547E+01 + PKER_RACCSS( 11, 31) = 0.115414E+01 + PKER_RACCSS( 11, 32) = 0.116132E+01 + PKER_RACCSS( 11, 33) = 0.116726E+01 + PKER_RACCSS( 11, 34) = 0.117218E+01 + PKER_RACCSS( 11, 35) = 0.117625E+01 + PKER_RACCSS( 11, 36) = 0.117961E+01 + PKER_RACCSS( 11, 37) = 0.118240E+01 + PKER_RACCSS( 11, 38) = 0.118470E+01 + PKER_RACCSS( 11, 39) = 0.118661E+01 + PKER_RACCSS( 11, 40) = 0.118819E+01 + PKER_RACCSS( 12, 1) = 0.782212E+01 + PKER_RACCSS( 12, 2) = 0.599420E+01 + PKER_RACCSS( 12, 3) = 0.455236E+01 + PKER_RACCSS( 12, 4) = 0.345125E+01 + PKER_RACCSS( 12, 5) = 0.264475E+01 + PKER_RACCSS( 12, 6) = 0.207701E+01 + PKER_RACCSS( 12, 7) = 0.168031E+01 + PKER_RACCSS( 12, 8) = 0.138445E+01 + PKER_RACCSS( 12, 9) = 0.113395E+01 + PKER_RACCSS( 12, 10) = 0.900399E+00 + PKER_RACCSS( 12, 11) = 0.683291E+00 + PKER_RACCSS( 12, 12) = 0.501952E+00 + PKER_RACCSS( 12, 13) = 0.380903E+00 + PKER_RACCSS( 12, 14) = 0.335581E+00 + PKER_RACCSS( 12, 15) = 0.362162E+00 + PKER_RACCSS( 12, 16) = 0.438221E+00 + PKER_RACCSS( 12, 17) = 0.534996E+00 + PKER_RACCSS( 12, 18) = 0.630498E+00 + PKER_RACCSS( 12, 19) = 0.714544E+00 + PKER_RACCSS( 12, 20) = 0.785149E+00 + PKER_RACCSS( 12, 21) = 0.843614E+00 + PKER_RACCSS( 12, 22) = 0.891886E+00 + PKER_RACCSS( 12, 23) = 0.931743E+00 + PKER_RACCSS( 12, 24) = 0.964664E+00 + PKER_RACCSS( 12, 25) = 0.991866E+00 + PKER_RACCSS( 12, 26) = 0.101435E+01 + PKER_RACCSS( 12, 27) = 0.103293E+01 + PKER_RACCSS( 12, 28) = 0.104830E+01 + PKER_RACCSS( 12, 29) = 0.106101E+01 + PKER_RACCSS( 12, 30) = 0.107152E+01 + PKER_RACCSS( 12, 31) = 0.108022E+01 + PKER_RACCSS( 12, 32) = 0.108741E+01 + PKER_RACCSS( 12, 33) = 0.109336E+01 + PKER_RACCSS( 12, 34) = 0.109828E+01 + PKER_RACCSS( 12, 35) = 0.110236E+01 + PKER_RACCSS( 12, 36) = 0.110573E+01 + PKER_RACCSS( 12, 37) = 0.110852E+01 + PKER_RACCSS( 12, 38) = 0.111082E+01 + PKER_RACCSS( 12, 39) = 0.111273E+01 + PKER_RACCSS( 12, 40) = 0.111431E+01 + PKER_RACCSS( 13, 1) = 0.981788E+01 + PKER_RACCSS( 13, 2) = 0.766217E+01 + PKER_RACCSS( 13, 3) = 0.591544E+01 + PKER_RACCSS( 13, 4) = 0.452414E+01 + PKER_RACCSS( 13, 5) = 0.344339E+01 + PKER_RACCSS( 13, 6) = 0.262943E+01 + PKER_RACCSS( 13, 7) = 0.203218E+01 + PKER_RACCSS( 13, 8) = 0.159445E+01 + PKER_RACCSS( 13, 9) = 0.125920E+01 + PKER_RACCSS( 13, 10) = 0.982700E+00 + PKER_RACCSS( 13, 11) = 0.743668E+00 + PKER_RACCSS( 13, 12) = 0.544085E+00 + PKER_RACCSS( 13, 13) = 0.399552E+00 + PKER_RACCSS( 13, 14) = 0.325874E+00 + PKER_RACCSS( 13, 15) = 0.325287E+00 + PKER_RACCSS( 13, 16) = 0.381940E+00 + PKER_RACCSS( 13, 17) = 0.468486E+00 + PKER_RACCSS( 13, 18) = 0.560310E+00 + PKER_RACCSS( 13, 19) = 0.643677E+00 + PKER_RACCSS( 13, 20) = 0.714489E+00 + PKER_RACCSS( 13, 21) = 0.773275E+00 + PKER_RACCSS( 13, 22) = 0.821809E+00 + PKER_RACCSS( 13, 23) = 0.861858E+00 + PKER_RACCSS( 13, 24) = 0.894921E+00 + PKER_RACCSS( 13, 25) = 0.922229E+00 + PKER_RACCSS( 13, 26) = 0.944790E+00 + PKER_RACCSS( 13, 27) = 0.963435E+00 + PKER_RACCSS( 13, 28) = 0.978848E+00 + PKER_RACCSS( 13, 29) = 0.991591E+00 + PKER_RACCSS( 13, 30) = 0.100213E+01 + PKER_RACCSS( 13, 31) = 0.101084E+01 + PKER_RACCSS( 13, 32) = 0.101805E+01 + PKER_RACCSS( 13, 33) = 0.102401E+01 + PKER_RACCSS( 13, 34) = 0.102895E+01 + PKER_RACCSS( 13, 35) = 0.103303E+01 + PKER_RACCSS( 13, 36) = 0.103640E+01 + PKER_RACCSS( 13, 37) = 0.103920E+01 + PKER_RACCSS( 13, 38) = 0.104151E+01 + PKER_RACCSS( 13, 39) = 0.104342E+01 + PKER_RACCSS( 13, 40) = 0.104500E+01 + PKER_RACCSS( 14, 1) = 0.113567E+02 + PKER_RACCSS( 14, 2) = 0.899336E+01 + PKER_RACCSS( 14, 3) = 0.705312E+01 + PKER_RACCSS( 14, 4) = 0.547412E+01 + PKER_RACCSS( 14, 5) = 0.420687E+01 + PKER_RACCSS( 14, 6) = 0.320973E+01 + PKER_RACCSS( 14, 7) = 0.244303E+01 + PKER_RACCSS( 14, 8) = 0.186415E+01 + PKER_RACCSS( 14, 9) = 0.142646E+01 + PKER_RACCSS( 14, 10) = 0.108627E+01 + PKER_RACCSS( 14, 11) = 0.811450E+00 + PKER_RACCSS( 14, 12) = 0.588974E+00 + PKER_RACCSS( 14, 13) = 0.422701E+00 + PKER_RACCSS( 14, 14) = 0.323861E+00 + PKER_RACCSS( 14, 15) = 0.298012E+00 + PKER_RACCSS( 14, 16) = 0.334007E+00 + PKER_RACCSS( 14, 17) = 0.408204E+00 + PKER_RACCSS( 14, 18) = 0.494846E+00 + PKER_RACCSS( 14, 19) = 0.576947E+00 + PKER_RACCSS( 14, 20) = 0.647860E+00 + PKER_RACCSS( 14, 21) = 0.707002E+00 + PKER_RACCSS( 14, 22) = 0.755849E+00 + PKER_RACCSS( 14, 23) = 0.796134E+00 + PKER_RACCSS( 14, 24) = 0.829370E+00 + PKER_RACCSS( 14, 25) = 0.856805E+00 + PKER_RACCSS( 14, 26) = 0.879461E+00 + PKER_RACCSS( 14, 27) = 0.898178E+00 + PKER_RACCSS( 14, 28) = 0.913645E+00 + PKER_RACCSS( 14, 29) = 0.926429E+00 + PKER_RACCSS( 14, 30) = 0.936998E+00 + PKER_RACCSS( 14, 31) = 0.945737E+00 + PKER_RACCSS( 14, 32) = 0.952964E+00 + PKER_RACCSS( 14, 33) = 0.958941E+00 + PKER_RACCSS( 14, 34) = 0.963884E+00 + PKER_RACCSS( 14, 35) = 0.967974E+00 + PKER_RACCSS( 14, 36) = 0.971357E+00 + PKER_RACCSS( 14, 37) = 0.974155E+00 + PKER_RACCSS( 14, 38) = 0.976471E+00 + PKER_RACCSS( 14, 39) = 0.978386E+00 + PKER_RACCSS( 14, 40) = 0.979971E+00 + PKER_RACCSS( 15, 1) = 0.124924E+02 + PKER_RACCSS( 15, 2) = 0.100003E+02 + PKER_RACCSS( 15, 3) = 0.794169E+01 + PKER_RACCSS( 15, 4) = 0.624828E+01 + PKER_RACCSS( 15, 5) = 0.486528E+01 + PKER_RACCSS( 15, 6) = 0.374844E+01 + PKER_RACCSS( 15, 7) = 0.286039E+01 + PKER_RACCSS( 15, 8) = 0.216647E+01 + PKER_RACCSS( 15, 9) = 0.163111E+01 + PKER_RACCSS( 15, 10) = 0.121825E+01 + PKER_RACCSS( 15, 11) = 0.895737E+00 + PKER_RACCSS( 15, 12) = 0.642706E+00 + PKER_RACCSS( 15, 13) = 0.452742E+00 + PKER_RACCSS( 15, 14) = 0.330032E+00 + PKER_RACCSS( 15, 15) = 0.279351E+00 + PKER_RACCSS( 15, 16) = 0.294228E+00 + PKER_RACCSS( 15, 17) = 0.354314E+00 + PKER_RACCSS( 15, 18) = 0.434176E+00 + PKER_RACCSS( 15, 19) = 0.514178E+00 + PKER_RACCSS( 15, 20) = 0.584975E+00 + PKER_RACCSS( 15, 21) = 0.644491E+00 + PKER_RACCSS( 15, 22) = 0.693710E+00 + PKER_RACCSS( 15, 23) = 0.734280E+00 + PKER_RACCSS( 15, 24) = 0.767726E+00 + PKER_RACCSS( 15, 25) = 0.795316E+00 + PKER_RACCSS( 15, 26) = 0.818088E+00 + PKER_RACCSS( 15, 27) = 0.836891E+00 + PKER_RACCSS( 15, 28) = 0.852423E+00 + PKER_RACCSS( 15, 29) = 0.865256E+00 + PKER_RACCSS( 15, 30) = 0.875863E+00 + PKER_RACCSS( 15, 31) = 0.884631E+00 + PKER_RACCSS( 15, 32) = 0.891880E+00 + PKER_RACCSS( 15, 33) = 0.897874E+00 + PKER_RACCSS( 15, 34) = 0.902831E+00 + PKER_RACCSS( 15, 35) = 0.906930E+00 + PKER_RACCSS( 15, 36) = 0.910321E+00 + PKER_RACCSS( 15, 37) = 0.913126E+00 + PKER_RACCSS( 15, 38) = 0.915447E+00 + PKER_RACCSS( 15, 39) = 0.917366E+00 + PKER_RACCSS( 15, 40) = 0.918954E+00 + PKER_RACCSS( 16, 1) = 0.136907E+02 + PKER_RACCSS( 16, 2) = 0.110657E+02 + PKER_RACCSS( 16, 3) = 0.889092E+01 + PKER_RACCSS( 16, 4) = 0.709169E+01 + PKER_RACCSS( 16, 5) = 0.560750E+01 + PKER_RACCSS( 16, 6) = 0.438940E+01 + PKER_RACCSS( 16, 7) = 0.339760E+01 + PKER_RACCSS( 16, 8) = 0.259872E+01 + PKER_RACCSS( 16, 9) = 0.196266E+01 + PKER_RACCSS( 16, 10) = 0.146081E+01 + PKER_RACCSS( 16, 11) = 0.106641E+01 + PKER_RACCSS( 16, 12) = 0.758348E+00 + PKER_RACCSS( 16, 13) = 0.524888E+00 + PKER_RACCSS( 16, 14) = 0.364964E+00 + PKER_RACCSS( 16, 15) = 0.280630E+00 + PKER_RACCSS( 16, 16) = 0.267498E+00 + PKER_RACCSS( 16, 17) = 0.308591E+00 + PKER_RACCSS( 16, 18) = 0.378682E+00 + PKER_RACCSS( 16, 19) = 0.455284E+00 + PKER_RACCSS( 16, 20) = 0.525585E+00 + PKER_RACCSS( 16, 21) = 0.585451E+00 + PKER_RACCSS( 16, 22) = 0.635103E+00 + PKER_RACCSS( 16, 23) = 0.676018E+00 + PKER_RACCSS( 16, 24) = 0.709719E+00 + PKER_RACCSS( 16, 25) = 0.737497E+00 + PKER_RACCSS( 16, 26) = 0.760408E+00 + PKER_RACCSS( 16, 27) = 0.779316E+00 + PKER_RACCSS( 16, 28) = 0.794926E+00 + PKER_RACCSS( 16, 29) = 0.807819E+00 + PKER_RACCSS( 16, 30) = 0.818471E+00 + PKER_RACCSS( 16, 31) = 0.827273E+00 + PKER_RACCSS( 16, 32) = 0.834549E+00 + PKER_RACCSS( 16, 33) = 0.840564E+00 + PKER_RACCSS( 16, 34) = 0.845537E+00 + PKER_RACCSS( 16, 35) = 0.849649E+00 + PKER_RACCSS( 16, 36) = 0.853049E+00 + PKER_RACCSS( 16, 37) = 0.855862E+00 + PKER_RACCSS( 16, 38) = 0.858188E+00 + PKER_RACCSS( 16, 39) = 0.860112E+00 + PKER_RACCSS( 16, 40) = 0.861704E+00 + PKER_RACCSS( 17, 1) = 0.143219E+02 + PKER_RACCSS( 17, 2) = 0.116425E+02 + PKER_RACCSS( 17, 3) = 0.942087E+01 + PKER_RACCSS( 17, 4) = 0.757943E+01 + PKER_RACCSS( 17, 5) = 0.605456E+01 + PKER_RACCSS( 17, 6) = 0.479437E+01 + PKER_RACCSS( 17, 7) = 0.375669E+01 + PKER_RACCSS( 17, 8) = 0.290705E+01 + PKER_RACCSS( 17, 9) = 0.221663E+01 + PKER_RACCSS( 17, 10) = 0.166050E+01 + PKER_RACCSS( 17, 11) = 0.121648E+01 + PKER_RACCSS( 17, 12) = 0.866211E+00 + PKER_RACCSS( 17, 13) = 0.597261E+00 + PKER_RACCSS( 17, 14) = 0.405300E+00 + PKER_RACCSS( 17, 15) = 0.290505E+00 + PKER_RACCSS( 17, 16) = 0.250047E+00 + PKER_RACCSS( 17, 17) = 0.270435E+00 + PKER_RACCSS( 17, 18) = 0.328579E+00 + PKER_RACCSS( 17, 19) = 0.400271E+00 + PKER_RACCSS( 17, 20) = 0.469487E+00 + PKER_RACCSS( 17, 21) = 0.529608E+00 + PKER_RACCSS( 17, 22) = 0.579747E+00 + PKER_RACCSS( 17, 23) = 0.621077E+00 + PKER_RACCSS( 17, 24) = 0.655088E+00 + PKER_RACCSS( 17, 25) = 0.683095E+00 + PKER_RACCSS( 17, 26) = 0.706175E+00 + PKER_RACCSS( 17, 27) = 0.725209E+00 + PKER_RACCSS( 17, 28) = 0.740914E+00 + PKER_RACCSS( 17, 29) = 0.753878E+00 + PKER_RACCSS( 17, 30) = 0.764585E+00 + PKER_RACCSS( 17, 31) = 0.773429E+00 + PKER_RACCSS( 17, 32) = 0.780736E+00 + PKER_RACCSS( 17, 33) = 0.786775E+00 + PKER_RACCSS( 17, 34) = 0.791767E+00 + PKER_RACCSS( 17, 35) = 0.795894E+00 + PKER_RACCSS( 17, 36) = 0.799306E+00 + PKER_RACCSS( 17, 37) = 0.802128E+00 + PKER_RACCSS( 17, 38) = 0.804461E+00 + PKER_RACCSS( 17, 39) = 0.806391E+00 + PKER_RACCSS( 17, 40) = 0.807987E+00 + PKER_RACCSS( 18, 1) = 0.147209E+02 + PKER_RACCSS( 18, 2) = 0.120131E+02 + PKER_RACCSS( 18, 3) = 0.976801E+01 + PKER_RACCSS( 18, 4) = 0.790632E+01 + PKER_RACCSS( 18, 5) = 0.636267E+01 + PKER_RACCSS( 18, 6) = 0.508334E+01 + PKER_RACCSS( 18, 7) = 0.402439E+01 + PKER_RACCSS( 18, 8) = 0.314991E+01 + PKER_RACCSS( 18, 9) = 0.243053E+01 + PKER_RACCSS( 18, 10) = 0.184200E+01 + PKER_RACCSS( 18, 11) = 0.136420E+01 + PKER_RACCSS( 18, 12) = 0.980889E+00 + PKER_RACCSS( 18, 13) = 0.680705E+00 + PKER_RACCSS( 18, 14) = 0.458391E+00 + PKER_RACCSS( 18, 15) = 0.313204E+00 + PKER_RACCSS( 18, 16) = 0.244163E+00 + PKER_RACCSS( 18, 17) = 0.241397E+00 + PKER_RACCSS( 18, 18) = 0.284627E+00 + PKER_RACCSS( 18, 19) = 0.349372E+00 + PKER_RACCSS( 18, 20) = 0.416570E+00 + PKER_RACCSS( 18, 21) = 0.476717E+00 + PKER_RACCSS( 18, 22) = 0.527374E+00 + PKER_RACCSS( 18, 23) = 0.569195E+00 + PKER_RACCSS( 18, 24) = 0.603582E+00 + PKER_RACCSS( 18, 25) = 0.631866E+00 + PKER_RACCSS( 18, 26) = 0.655151E+00 + PKER_RACCSS( 18, 27) = 0.674337E+00 + PKER_RACCSS( 18, 28) = 0.690157E+00 + PKER_RACCSS( 18, 29) = 0.703207E+00 + PKER_RACCSS( 18, 30) = 0.713979E+00 + PKER_RACCSS( 18, 31) = 0.722873E+00 + PKER_RACCSS( 18, 32) = 0.730219E+00 + PKER_RACCSS( 18, 33) = 0.736287E+00 + PKER_RACCSS( 18, 34) = 0.741302E+00 + PKER_RACCSS( 18, 35) = 0.745447E+00 + PKER_RACCSS( 18, 36) = 0.748872E+00 + PKER_RACCSS( 18, 37) = 0.751705E+00 + PKER_RACCSS( 18, 38) = 0.754046E+00 + PKER_RACCSS( 18, 39) = 0.755982E+00 + PKER_RACCSS( 18, 40) = 0.757584E+00 + PKER_RACCSS( 19, 1) = 0.149183E+02 + PKER_RACCSS( 19, 2) = 0.122030E+02 + PKER_RACCSS( 19, 3) = 0.994164E+01 + PKER_RACCSS( 19, 4) = 0.807634E+01 + PKER_RACCSS( 19, 5) = 0.652942E+01 + PKER_RACCSS( 19, 6) = 0.524643E+01 + PKER_RACCSS( 19, 7) = 0.418260E+01 + PKER_RACCSS( 19, 8) = 0.330120E+01 + PKER_RACCSS( 19, 9) = 0.257220E+01 + PKER_RACCSS( 19, 10) = 0.197109E+01 + PKER_RACCSS( 19, 11) = 0.147799E+01 + PKER_RACCSS( 19, 12) = 0.107723E+01 + PKER_RACCSS( 19, 13) = 0.757647E+00 + PKER_RACCSS( 19, 14) = 0.513325E+00 + PKER_RACCSS( 19, 15) = 0.343389E+00 + PKER_RACCSS( 19, 16) = 0.247854E+00 + PKER_RACCSS( 19, 17) = 0.221083E+00 + PKER_RACCSS( 19, 18) = 0.247150E+00 + PKER_RACCSS( 19, 19) = 0.302778E+00 + PKER_RACCSS( 19, 20) = 0.366775E+00 + PKER_RACCSS( 19, 21) = 0.426568E+00 + PKER_RACCSS( 19, 22) = 0.477725E+00 + PKER_RACCSS( 19, 23) = 0.520116E+00 + PKER_RACCSS( 19, 24) = 0.554956E+00 + PKER_RACCSS( 19, 25) = 0.583576E+00 + PKER_RACCSS( 19, 26) = 0.607109E+00 + PKER_RACCSS( 19, 27) = 0.626480E+00 + PKER_RACCSS( 19, 28) = 0.642437E+00 + PKER_RACCSS( 19, 29) = 0.655592E+00 + PKER_RACCSS( 19, 30) = 0.666442E+00 + PKER_RACCSS( 19, 31) = 0.675396E+00 + PKER_RACCSS( 19, 32) = 0.682788E+00 + PKER_RACCSS( 19, 33) = 0.688892E+00 + PKER_RACCSS( 19, 34) = 0.693934E+00 + PKER_RACCSS( 19, 35) = 0.698099E+00 + PKER_RACCSS( 19, 36) = 0.701541E+00 + PKER_RACCSS( 19, 37) = 0.704386E+00 + PKER_RACCSS( 19, 38) = 0.706738E+00 + PKER_RACCSS( 19, 39) = 0.708682E+00 + PKER_RACCSS( 19, 40) = 0.710289E+00 + PKER_RACCSS( 20, 1) = 0.149148E+02 + PKER_RACCSS( 20, 2) = 0.121968E+02 + PKER_RACCSS( 20, 3) = 0.994688E+01 + PKER_RACCSS( 20, 4) = 0.808241E+01 + PKER_RACCSS( 20, 5) = 0.653732E+01 + PKER_RACCSS( 20, 6) = 0.525704E+01 + PKER_RACCSS( 20, 7) = 0.419660E+01 + PKER_RACCSS( 20, 8) = 0.331897E+01 + PKER_RACCSS( 20, 9) = 0.259370E+01 + PKER_RACCSS( 20, 10) = 0.199579E+01 + PKER_RACCSS( 20, 11) = 0.150482E+01 + PKER_RACCSS( 20, 12) = 0.110452E+01 + PKER_RACCSS( 20, 13) = 0.783023E+00 + PKER_RACCSS( 20, 14) = 0.533371E+00 + PKER_RACCSS( 20, 15) = 0.353809E+00 + PKER_RACCSS( 20, 16) = 0.245035E+00 + PKER_RACCSS( 20, 17) = 0.204243E+00 + PKER_RACCSS( 20, 18) = 0.219182E+00 + PKER_RACCSS( 20, 19) = 0.268663E+00 + PKER_RACCSS( 20, 20) = 0.330431E+00 + PKER_RACCSS( 20, 21) = 0.389684E+00 + PKER_RACCSS( 20, 22) = 0.440619E+00 + PKER_RACCSS( 20, 23) = 0.482783E+00 + PKER_RACCSS( 20, 24) = 0.517411E+00 + PKER_RACCSS( 20, 25) = 0.545855E+00 + PKER_RACCSS( 20, 26) = 0.569246E+00 + PKER_RACCSS( 20, 27) = 0.588502E+00 + PKER_RACCSS( 20, 28) = 0.604366E+00 + PKER_RACCSS( 20, 29) = 0.617445E+00 + PKER_RACCSS( 20, 30) = 0.628235E+00 + PKER_RACCSS( 20, 31) = 0.637140E+00 + PKER_RACCSS( 20, 32) = 0.644493E+00 + PKER_RACCSS( 20, 33) = 0.650566E+00 + PKER_RACCSS( 20, 34) = 0.655583E+00 + PKER_RACCSS( 20, 35) = 0.659729E+00 + PKER_RACCSS( 20, 36) = 0.663155E+00 + PKER_RACCSS( 20, 37) = 0.665988E+00 + PKER_RACCSS( 20, 38) = 0.668329E+00 + PKER_RACCSS( 20, 39) = 0.670265E+00 + PKER_RACCSS( 20, 40) = 0.671867E+00 + PKER_RACCSS( 21, 1) = 0.150013E+02 + PKER_RACCSS( 21, 2) = 0.122869E+02 + PKER_RACCSS( 21, 3) = 0.100382E+02 + PKER_RACCSS( 21, 4) = 0.817497E+01 + PKER_RACCSS( 21, 5) = 0.663057E+01 + PKER_RACCSS( 21, 6) = 0.535086E+01 + PKER_RACCSS( 21, 7) = 0.429034E+01 + PKER_RACCSS( 21, 8) = 0.341176E+01 + PKER_RACCSS( 21, 9) = 0.268444E+01 + PKER_RACCSS( 21, 10) = 0.208320E+01 + PKER_RACCSS( 21, 11) = 0.158747E+01 + PKER_RACCSS( 21, 12) = 0.118074E+01 + PKER_RACCSS( 21, 13) = 0.850535E+00 + PKER_RACCSS( 21, 14) = 0.588897E+00 + PKER_RACCSS( 21, 15) = 0.392828E+00 + PKER_RACCSS( 21, 16) = 0.262954E+00 + PKER_RACCSS( 21, 17) = 0.199389E+00 + PKER_RACCSS( 21, 18) = 0.194569E+00 + PKER_RACCSS( 21, 19) = 0.231063E+00 + PKER_RACCSS( 21, 20) = 0.286983E+00 + PKER_RACCSS( 21, 21) = 0.344860E+00 + PKER_RACCSS( 21, 22) = 0.396111E+00 + PKER_RACCSS( 21, 23) = 0.438868E+00 + PKER_RACCSS( 21, 24) = 0.473989E+00 + PKER_RACCSS( 21, 25) = 0.502799E+00 + PKER_RACCSS( 21, 26) = 0.526459E+00 + PKER_RACCSS( 21, 27) = 0.545913E+00 + PKER_RACCSS( 21, 28) = 0.561925E+00 + PKER_RACCSS( 21, 29) = 0.575114E+00 + PKER_RACCSS( 21, 30) = 0.585987E+00 + PKER_RACCSS( 21, 31) = 0.594955E+00 + PKER_RACCSS( 21, 32) = 0.602355E+00 + PKER_RACCSS( 21, 33) = 0.608464E+00 + PKER_RACCSS( 21, 34) = 0.613509E+00 + PKER_RACCSS( 21, 35) = 0.617676E+00 + PKER_RACCSS( 21, 36) = 0.621119E+00 + PKER_RACCSS( 21, 37) = 0.623965E+00 + PKER_RACCSS( 21, 38) = 0.626316E+00 + PKER_RACCSS( 21, 39) = 0.628260E+00 + PKER_RACCSS( 21, 40) = 0.629867E+00 + PKER_RACCSS( 22, 1) = 0.150720E+02 + PKER_RACCSS( 22, 2) = 0.123594E+02 + PKER_RACCSS( 22, 3) = 0.101123E+02 + PKER_RACCSS( 22, 4) = 0.825051E+01 + PKER_RACCSS( 22, 5) = 0.670778E+01 + PKER_RACCSS( 22, 6) = 0.542920E+01 + PKER_RACCSS( 22, 7) = 0.436946E+01 + PKER_RACCSS( 22, 8) = 0.349113E+01 + PKER_RACCSS( 22, 9) = 0.276334E+01 + PKER_RACCSS( 22, 10) = 0.216073E+01 + PKER_RACCSS( 22, 11) = 0.166252E+01 + PKER_RACCSS( 22, 12) = 0.125192E+01 + PKER_RACCSS( 22, 13) = 0.915920E+00 + PKER_RACCSS( 22, 14) = 0.645535E+00 + PKER_RACCSS( 22, 15) = 0.436397E+00 + PKER_RACCSS( 22, 16) = 0.288654E+00 + PKER_RACCSS( 22, 17) = 0.203659E+00 + PKER_RACCSS( 22, 18) = 0.178071E+00 + PKER_RACCSS( 22, 19) = 0.199311E+00 + PKER_RACCSS( 22, 20) = 0.247192E+00 + PKER_RACCSS( 22, 21) = 0.302537E+00 + PKER_RACCSS( 22, 22) = 0.353781E+00 + PKER_RACCSS( 22, 23) = 0.397157E+00 + PKER_RACCSS( 22, 24) = 0.432857E+00 + PKER_RACCSS( 22, 25) = 0.462108E+00 + PKER_RACCSS( 22, 26) = 0.486096E+00 + PKER_RACCSS( 22, 27) = 0.505793E+00 + PKER_RACCSS( 22, 28) = 0.521983E+00 + PKER_RACCSS( 22, 29) = 0.535306E+00 + PKER_RACCSS( 22, 30) = 0.546278E+00 + PKER_RACCSS( 22, 31) = 0.555321E+00 + PKER_RACCSS( 22, 32) = 0.562778E+00 + PKER_RACCSS( 22, 33) = 0.568931E+00 + PKER_RACCSS( 22, 34) = 0.574009E+00 + PKER_RACCSS( 22, 35) = 0.578202E+00 + PKER_RACCSS( 22, 36) = 0.581665E+00 + PKER_RACCSS( 22, 37) = 0.584526E+00 + PKER_RACCSS( 22, 38) = 0.586889E+00 + PKER_RACCSS( 22, 39) = 0.588843E+00 + PKER_RACCSS( 22, 40) = 0.590457E+00 + PKER_RACCSS( 23, 1) = 0.150726E+02 + PKER_RACCSS( 23, 2) = 0.123607E+02 + PKER_RACCSS( 23, 3) = 0.101143E+02 + PKER_RACCSS( 23, 4) = 0.825344E+01 + PKER_RACCSS( 23, 5) = 0.671177E+01 + PKER_RACCSS( 23, 6) = 0.543448E+01 + PKER_RACCSS( 23, 7) = 0.437621E+01 + PKER_RACCSS( 23, 8) = 0.349956E+01 + PKER_RACCSS( 23, 9) = 0.277362E+01 + PKER_RACCSS( 23, 10) = 0.217295E+01 + PKER_RACCSS( 23, 11) = 0.167667E+01 + PKER_RACCSS( 23, 12) = 0.126773E+01 + PKER_RACCSS( 23, 13) = 0.932718E+00 + PKER_RACCSS( 23, 14) = 0.661907E+00 + PKER_RACCSS( 23, 15) = 0.449897E+00 + PKER_RACCSS( 23, 16) = 0.295961E+00 + PKER_RACCSS( 23, 17) = 0.201862E+00 + PKER_RACCSS( 23, 18) = 0.166501E+00 + PKER_RACCSS( 23, 19) = 0.180054E+00 + PKER_RACCSS( 23, 20) = 0.223817E+00 + PKER_RACCSS( 23, 21) = 0.277646E+00 + PKER_RACCSS( 23, 22) = 0.328410E+00 + PKER_RACCSS( 23, 23) = 0.371512E+00 + PKER_RACCSS( 23, 24) = 0.406971E+00 + PKER_RACCSS( 23, 25) = 0.436013E+00 + PKER_RACCSS( 23, 26) = 0.459823E+00 + PKER_RACCSS( 23, 27) = 0.479372E+00 + PKER_RACCSS( 23, 28) = 0.495442E+00 + PKER_RACCSS( 23, 29) = 0.508667E+00 + PKER_RACCSS( 23, 30) = 0.519559E+00 + PKER_RACCSS( 23, 31) = 0.528537E+00 + PKER_RACCSS( 23, 32) = 0.535942E+00 + PKER_RACCSS( 23, 33) = 0.542053E+00 + PKER_RACCSS( 23, 34) = 0.547098E+00 + PKER_RACCSS( 23, 35) = 0.551263E+00 + PKER_RACCSS( 23, 36) = 0.554705E+00 + PKER_RACCSS( 23, 37) = 0.557548E+00 + PKER_RACCSS( 23, 38) = 0.559898E+00 + PKER_RACCSS( 23, 39) = 0.561840E+00 + PKER_RACCSS( 23, 40) = 0.563446E+00 + PKER_RACCSS( 24, 1) = 0.151324E+02 + PKER_RACCSS( 24, 2) = 0.124216E+02 + PKER_RACCSS( 24, 3) = 0.101765E+02 + PKER_RACCSS( 24, 4) = 0.831675E+01 + PKER_RACCSS( 24, 5) = 0.677615E+01 + PKER_RACCSS( 24, 6) = 0.549978E+01 + PKER_RACCSS( 24, 7) = 0.444223E+01 + PKER_RACCSS( 24, 8) = 0.356597E+01 + PKER_RACCSS( 24, 9) = 0.284002E+01 + PKER_RACCSS( 24, 10) = 0.223881E+01 + PKER_RACCSS( 24, 11) = 0.174131E+01 + PKER_RACCSS( 24, 12) = 0.133030E+01 + PKER_RACCSS( 24, 13) = 0.992011E+00 + PKER_RACCSS( 24, 14) = 0.716009E+00 + PKER_RACCSS( 24, 15) = 0.495767E+00 + PKER_RACCSS( 24, 16) = 0.329155E+00 + PKER_RACCSS( 24, 17) = 0.217613E+00 + PKER_RACCSS( 24, 18) = 0.162580E+00 + PKER_RACCSS( 24, 19) = 0.158691E+00 + PKER_RACCSS( 24, 20) = 0.191157E+00 + PKER_RACCSS( 24, 21) = 0.240223E+00 + PKER_RACCSS( 24, 22) = 0.290187E+00 + PKER_RACCSS( 24, 23) = 0.333776E+00 + PKER_RACCSS( 24, 24) = 0.369843E+00 + PKER_RACCSS( 24, 25) = 0.399359E+00 + PKER_RACCSS( 24, 26) = 0.423520E+00 + PKER_RACCSS( 24, 27) = 0.443327E+00 + PKER_RACCSS( 24, 28) = 0.459588E+00 + PKER_RACCSS( 24, 29) = 0.472953E+00 + PKER_RACCSS( 24, 30) = 0.483950E+00 + PKER_RACCSS( 24, 31) = 0.493007E+00 + PKER_RACCSS( 24, 32) = 0.500470E+00 + PKER_RACCSS( 24, 33) = 0.506625E+00 + PKER_RACCSS( 24, 34) = 0.511703E+00 + PKER_RACCSS( 24, 35) = 0.515895E+00 + PKER_RACCSS( 24, 36) = 0.519356E+00 + PKER_RACCSS( 24, 37) = 0.522215E+00 + PKER_RACCSS( 24, 38) = 0.524576E+00 + PKER_RACCSS( 24, 39) = 0.526528E+00 + PKER_RACCSS( 24, 40) = 0.528140E+00 + PKER_RACCSS( 25, 1) = 0.151432E+02 + PKER_RACCSS( 25, 2) = 0.124328E+02 + PKER_RACCSS( 25, 3) = 0.101882E+02 + PKER_RACCSS( 25, 4) = 0.832899E+01 + PKER_RACCSS( 25, 5) = 0.678899E+01 + PKER_RACCSS( 25, 6) = 0.551328E+01 + PKER_RACCSS( 25, 7) = 0.445646E+01 + PKER_RACCSS( 25, 8) = 0.358099E+01 + PKER_RACCSS( 25, 9) = 0.285587E+01 + PKER_RACCSS( 25, 10) = 0.225550E+01 + PKER_RACCSS( 25, 11) = 0.175879E+01 + PKER_RACCSS( 25, 12) = 0.134845E+01 + PKER_RACCSS( 25, 13) = 0.101050E+01 + PKER_RACCSS( 25, 14) = 0.734111E+00 + PKER_RACCSS( 25, 15) = 0.512093E+00 + PKER_RACCSS( 25, 16) = 0.341419E+00 + PKER_RACCSS( 25, 17) = 0.223087E+00 + PKER_RACCSS( 25, 18) = 0.159345E+00 + PKER_RACCSS( 25, 19) = 0.147102E+00 + PKER_RACCSS( 25, 20) = 0.173839E+00 + PKER_RACCSS( 25, 21) = 0.220264E+00 + PKER_RACCSS( 25, 22) = 0.269389E+00 + PKER_RACCSS( 25, 23) = 0.312757E+00 + PKER_RACCSS( 25, 24) = 0.348700E+00 + PKER_RACCSS( 25, 25) = 0.378105E+00 + PKER_RACCSS( 25, 26) = 0.402161E+00 + PKER_RACCSS( 25, 27) = 0.421874E+00 + PKER_RACCSS( 25, 28) = 0.438052E+00 + PKER_RACCSS( 25, 29) = 0.451345E+00 + PKER_RACCSS( 25, 30) = 0.462282E+00 + PKER_RACCSS( 25, 31) = 0.471288E+00 + PKER_RACCSS( 25, 32) = 0.478709E+00 + PKER_RACCSS( 25, 33) = 0.484830E+00 + PKER_RACCSS( 25, 34) = 0.489880E+00 + PKER_RACCSS( 25, 35) = 0.494049E+00 + PKER_RACCSS( 25, 36) = 0.497492E+00 + PKER_RACCSS( 25, 37) = 0.500336E+00 + PKER_RACCSS( 25, 38) = 0.502685E+00 + PKER_RACCSS( 25, 39) = 0.504627E+00 + PKER_RACCSS( 25, 40) = 0.506233E+00 + PKER_RACCSS( 26, 1) = 0.151604E+02 + PKER_RACCSS( 26, 2) = 0.124505E+02 + PKER_RACCSS( 26, 3) = 0.102063E+02 + PKER_RACCSS( 26, 4) = 0.834759E+01 + PKER_RACCSS( 26, 5) = 0.680810E+01 + PKER_RACCSS( 26, 6) = 0.553290E+01 + PKER_RACCSS( 26, 7) = 0.447661E+01 + PKER_RACCSS( 26, 8) = 0.360165E+01 + PKER_RACCSS( 26, 9) = 0.287702E+01 + PKER_RACCSS( 26, 10) = 0.227707E+01 + PKER_RACCSS( 26, 11) = 0.178069E+01 + PKER_RACCSS( 26, 12) = 0.137049E+01 + PKER_RACCSS( 26, 13) = 0.103238E+01 + PKER_RACCSS( 26, 14) = 0.755232E+00 + PKER_RACCSS( 26, 15) = 0.531299E+00 + PKER_RACCSS( 26, 16) = 0.356723E+00 + PKER_RACCSS( 26, 17) = 0.231969E+00 + PKER_RACCSS( 26, 18) = 0.159466E+00 + PKER_RACCSS( 26, 19) = 0.138275E+00 + PKER_RACCSS( 26, 20) = 0.158408E+00 + PKER_RACCSS( 26, 21) = 0.201507E+00 + PKER_RACCSS( 26, 22) = 0.249601E+00 + PKER_RACCSS( 26, 23) = 0.292817E+00 + PKER_RACCSS( 26, 24) = 0.328766E+00 + PKER_RACCSS( 26, 25) = 0.358167E+00 + PKER_RACCSS( 26, 26) = 0.382203E+00 + PKER_RACCSS( 26, 27) = 0.401886E+00 + PKER_RACCSS( 26, 28) = 0.418030E+00 + PKER_RACCSS( 26, 29) = 0.431290E+00 + PKER_RACCSS( 26, 30) = 0.442195E+00 + PKER_RACCSS( 26, 31) = 0.451173E+00 + PKER_RACCSS( 26, 32) = 0.458570E+00 + PKER_RACCSS( 26, 33) = 0.464669E+00 + PKER_RACCSS( 26, 34) = 0.469702E+00 + PKER_RACCSS( 26, 35) = 0.473856E+00 + PKER_RACCSS( 26, 36) = 0.477287E+00 + PKER_RACCSS( 26, 37) = 0.480121E+00 + PKER_RACCSS( 26, 38) = 0.482463E+00 + PKER_RACCSS( 26, 39) = 0.484399E+00 + PKER_RACCSS( 26, 40) = 0.485999E+00 + PKER_RACCSS( 27, 1) = 0.151814E+02 + PKER_RACCSS( 27, 2) = 0.124719E+02 + PKER_RACCSS( 27, 3) = 0.102281E+02 + PKER_RACCSS( 27, 4) = 0.836990E+01 + PKER_RACCSS( 27, 5) = 0.683086E+01 + PKER_RACCSS( 27, 6) = 0.555611E+01 + PKER_RACCSS( 27, 7) = 0.450023E+01 + PKER_RACCSS( 27, 8) = 0.362567E+01 + PKER_RACCSS( 27, 9) = 0.290135E+01 + PKER_RACCSS( 27, 10) = 0.230164E+01 + PKER_RACCSS( 27, 11) = 0.180536E+01 + PKER_RACCSS( 27, 12) = 0.139509E+01 + PKER_RACCSS( 27, 13) = 0.105660E+01 + PKER_RACCSS( 27, 14) = 0.778555E+00 + PKER_RACCSS( 27, 15) = 0.552744E+00 + PKER_RACCSS( 27, 16) = 0.374600E+00 + PKER_RACCSS( 27, 17) = 0.243637E+00 + PKER_RACCSS( 27, 18) = 0.162579E+00 + PKER_RACCSS( 27, 19) = 0.131954E+00 + PKER_RACCSS( 27, 20) = 0.144584E+00 + PKER_RACCSS( 27, 21) = 0.183443E+00 + PKER_RACCSS( 27, 22) = 0.230184E+00 + PKER_RACCSS( 27, 23) = 0.273243E+00 + PKER_RACCSS( 27, 24) = 0.309289E+00 + PKER_RACCSS( 27, 25) = 0.338774E+00 + PKER_RACCSS( 27, 26) = 0.362856E+00 + PKER_RACCSS( 27, 27) = 0.382560E+00 + PKER_RACCSS( 27, 28) = 0.398710E+00 + PKER_RACCSS( 27, 29) = 0.411966E+00 + PKER_RACCSS( 27, 30) = 0.422862E+00 + PKER_RACCSS( 27, 31) = 0.431828E+00 + PKER_RACCSS( 27, 32) = 0.439214E+00 + PKER_RACCSS( 27, 33) = 0.445302E+00 + PKER_RACCSS( 27, 34) = 0.450325E+00 + PKER_RACCSS( 27, 35) = 0.454471E+00 + PKER_RACCSS( 27, 36) = 0.457894E+00 + PKER_RACCSS( 27, 37) = 0.460722E+00 + PKER_RACCSS( 27, 38) = 0.463059E+00 + PKER_RACCSS( 27, 39) = 0.464990E+00 + PKER_RACCSS( 27, 40) = 0.466587E+00 + PKER_RACCSS( 28, 1) = 0.151833E+02 + PKER_RACCSS( 28, 2) = 0.124739E+02 + PKER_RACCSS( 28, 3) = 0.102303E+02 + PKER_RACCSS( 28, 4) = 0.837216E+01 + PKER_RACCSS( 28, 5) = 0.683329E+01 + PKER_RACCSS( 28, 6) = 0.555874E+01 + PKER_RACCSS( 28, 7) = 0.450309E+01 + PKER_RACCSS( 28, 8) = 0.362879E+01 + PKER_RACCSS( 28, 9) = 0.290477E+01 + PKER_RACCSS( 28, 10) = 0.230538E+01 + PKER_RACCSS( 28, 11) = 0.180946E+01 + PKER_RACCSS( 28, 12) = 0.139955E+01 + PKER_RACCSS( 28, 13) = 0.106140E+01 + PKER_RACCSS( 28, 14) = 0.783576E+00 + PKER_RACCSS( 28, 15) = 0.557673E+00 + PKER_RACCSS( 28, 16) = 0.378779E+00 + PKER_RACCSS( 28, 17) = 0.246210E+00 + PKER_RACCSS( 28, 18) = 0.162452E+00 + PKER_RACCSS( 28, 19) = 0.128861E+00 + PKER_RACCSS( 28, 20) = 0.138936E+00 + PKER_RACCSS( 28, 21) = 0.176459E+00 + PKER_RACCSS( 28, 22) = 0.222625E+00 + PKER_RACCSS( 28, 23) = 0.265456E+00 + PKER_RACCSS( 28, 24) = 0.301332E+00 + PKER_RACCSS( 28, 25) = 0.330667E+00 + PKER_RACCSS( 28, 26) = 0.354619E+00 + PKER_RACCSS( 28, 27) = 0.374211E+00 + PKER_RACCSS( 28, 28) = 0.390266E+00 + PKER_RACCSS( 28, 29) = 0.403443E+00 + PKER_RACCSS( 28, 30) = 0.414273E+00 + PKER_RACCSS( 28, 31) = 0.423185E+00 + PKER_RACCSS( 28, 32) = 0.430527E+00 + PKER_RACCSS( 28, 33) = 0.436580E+00 + PKER_RACCSS( 28, 34) = 0.441573E+00 + PKER_RACCSS( 28, 35) = 0.445696E+00 + PKER_RACCSS( 28, 36) = 0.449101E+00 + PKER_RACCSS( 28, 37) = 0.451914E+00 + PKER_RACCSS( 28, 38) = 0.454239E+00 + PKER_RACCSS( 28, 39) = 0.456161E+00 + PKER_RACCSS( 28, 40) = 0.457750E+00 + PKER_RACCSS( 29, 1) = 0.151936E+02 + PKER_RACCSS( 29, 2) = 0.124845E+02 + PKER_RACCSS( 29, 3) = 0.102410E+02 + PKER_RACCSS( 29, 4) = 0.838316E+01 + PKER_RACCSS( 29, 5) = 0.684451E+01 + PKER_RACCSS( 29, 6) = 0.557018E+01 + PKER_RACCSS( 29, 7) = 0.451475E+01 + PKER_RACCSS( 29, 8) = 0.364064E+01 + PKER_RACCSS( 29, 9) = 0.291680E+01 + PKER_RACCSS( 29, 10) = 0.231756E+01 + PKER_RACCSS( 29, 11) = 0.182172E+01 + PKER_RACCSS( 29, 12) = 0.141183E+01 + PKER_RACCSS( 29, 13) = 0.107359E+01 + PKER_RACCSS( 29, 14) = 0.795449E+00 + PKER_RACCSS( 29, 15) = 0.568820E+00 + PKER_RACCSS( 29, 16) = 0.388406E+00 + PKER_RACCSS( 29, 17) = 0.253055E+00 + PKER_RACCSS( 29, 18) = 0.165100E+00 + PKER_RACCSS( 29, 19) = 0.126486E+00 + PKER_RACCSS( 29, 20) = 0.132218E+00 + PKER_RACCSS( 29, 21) = 0.167127E+00 + PKER_RACCSS( 29, 22) = 0.212335E+00 + PKER_RACCSS( 29, 23) = 0.254984E+00 + PKER_RACCSS( 29, 24) = 0.290865E+00 + PKER_RACCSS( 29, 25) = 0.320207E+00 + PKER_RACCSS( 29, 26) = 0.344152E+00 + PKER_RACCSS( 29, 27) = 0.363727E+00 + PKER_RACCSS( 29, 28) = 0.379760E+00 + PKER_RACCSS( 29, 29) = 0.392914E+00 + PKER_RACCSS( 29, 30) = 0.403723E+00 + PKER_RACCSS( 29, 31) = 0.412615E+00 + PKER_RACCSS( 29, 32) = 0.419938E+00 + PKER_RACCSS( 29, 33) = 0.425976E+00 + PKER_RACCSS( 29, 34) = 0.430956E+00 + PKER_RACCSS( 29, 35) = 0.435068E+00 + PKER_RACCSS( 29, 36) = 0.438464E+00 + PKER_RACCSS( 29, 37) = 0.441269E+00 + PKER_RACCSS( 29, 38) = 0.443588E+00 + PKER_RACCSS( 29, 39) = 0.445506E+00 + PKER_RACCSS( 29, 40) = 0.447091E+00 + PKER_RACCSS( 30, 1) = 0.152092E+02 + PKER_RACCSS( 30, 2) = 0.125003E+02 + PKER_RACCSS( 30, 3) = 0.102571E+02 + PKER_RACCSS( 30, 4) = 0.839954E+01 + PKER_RACCSS( 30, 5) = 0.686114E+01 + PKER_RACCSS( 30, 6) = 0.558706E+01 + PKER_RACCSS( 30, 7) = 0.453184E+01 + PKER_RACCSS( 30, 8) = 0.365791E+01 + PKER_RACCSS( 30, 9) = 0.293420E+01 + PKER_RACCSS( 30, 10) = 0.233502E+01 + PKER_RACCSS( 30, 11) = 0.183917E+01 + PKER_RACCSS( 30, 12) = 0.142914E+01 + PKER_RACCSS( 30, 13) = 0.109060E+01 + PKER_RACCSS( 30, 14) = 0.811894E+00 + PKER_RACCSS( 30, 15) = 0.584240E+00 + PKER_RACCSS( 30, 16) = 0.401963E+00 + PKER_RACCSS( 30, 17) = 0.263204E+00 + PKER_RACCSS( 30, 18) = 0.170121E+00 + PKER_RACCSS( 30, 19) = 0.125069E+00 + PKER_RACCSS( 30, 20) = 0.124997E+00 + PKER_RACCSS( 30, 21) = 0.156156E+00 + PKER_RACCSS( 30, 22) = 0.199916E+00 + PKER_RACCSS( 30, 23) = 0.242350E+00 + PKER_RACCSS( 30, 24) = 0.278332E+00 + PKER_RACCSS( 30, 25) = 0.307780E+00 + PKER_RACCSS( 30, 26) = 0.331793E+00 + PKER_RACCSS( 30, 27) = 0.351410E+00 + PKER_RACCSS( 30, 28) = 0.367466E+00 + PKER_RACCSS( 30, 29) = 0.380631E+00 + PKER_RACCSS( 30, 30) = 0.391442E+00 + PKER_RACCSS( 30, 31) = 0.400333E+00 + PKER_RACCSS( 30, 32) = 0.407654E+00 + PKER_RACCSS( 30, 33) = 0.413687E+00 + PKER_RACCSS( 30, 34) = 0.418663E+00 + PKER_RACCSS( 30, 35) = 0.422770E+00 + PKER_RACCSS( 30, 36) = 0.426162E+00 + PKER_RACCSS( 30, 37) = 0.428964E+00 + PKER_RACCSS( 30, 38) = 0.431280E+00 + PKER_RACCSS( 30, 39) = 0.433195E+00 + PKER_RACCSS( 30, 40) = 0.434778E+00 + PKER_RACCSS( 31, 1) = 0.152168E+02 + PKER_RACCSS( 31, 2) = 0.125081E+02 + PKER_RACCSS( 31, 3) = 0.102650E+02 + PKER_RACCSS( 31, 4) = 0.840757E+01 + PKER_RACCSS( 31, 5) = 0.686932E+01 + PKER_RACCSS( 31, 6) = 0.559536E+01 + PKER_RACCSS( 31, 7) = 0.454028E+01 + PKER_RACCSS( 31, 8) = 0.366647E+01 + PKER_RACCSS( 31, 9) = 0.294286E+01 + PKER_RACCSS( 31, 10) = 0.234375E+01 + PKER_RACCSS( 31, 11) = 0.184793E+01 + PKER_RACCSS( 31, 12) = 0.143790E+01 + PKER_RACCSS( 31, 13) = 0.109928E+01 + PKER_RACCSS( 31, 14) = 0.820370E+00 + PKER_RACCSS( 31, 15) = 0.592284E+00 + PKER_RACCSS( 31, 16) = 0.409147E+00 + PKER_RACCSS( 31, 17) = 0.268707E+00 + PKER_RACCSS( 31, 18) = 0.172988E+00 + PKER_RACCSS( 31, 19) = 0.124548E+00 + PKER_RACCSS( 31, 20) = 0.121193E+00 + PKER_RACCSS( 31, 21) = 0.150187E+00 + PKER_RACCSS( 31, 22) = 0.193042E+00 + PKER_RACCSS( 31, 23) = 0.235298E+00 + PKER_RACCSS( 31, 24) = 0.271298E+00 + PKER_RACCSS( 31, 25) = 0.300774E+00 + PKER_RACCSS( 31, 26) = 0.324800E+00 + PKER_RACCSS( 31, 27) = 0.344418E+00 + PKER_RACCSS( 31, 28) = 0.360469E+00 + PKER_RACCSS( 31, 29) = 0.373626E+00 + PKER_RACCSS( 31, 30) = 0.384427E+00 + PKER_RACCSS( 31, 31) = 0.393308E+00 + PKER_RACCSS( 31, 32) = 0.400619E+00 + PKER_RACCSS( 31, 33) = 0.406643E+00 + PKER_RACCSS( 31, 34) = 0.411612E+00 + PKER_RACCSS( 31, 35) = 0.415713E+00 + PKER_RACCSS( 31, 36) = 0.419099E+00 + PKER_RACCSS( 31, 37) = 0.421897E+00 + PKER_RACCSS( 31, 38) = 0.424209E+00 + PKER_RACCSS( 31, 39) = 0.426121E+00 + PKER_RACCSS( 31, 40) = 0.427702E+00 + PKER_RACCSS( 32, 1) = 0.152212E+02 + PKER_RACCSS( 32, 2) = 0.125125E+02 + PKER_RACCSS( 32, 3) = 0.102696E+02 + PKER_RACCSS( 32, 4) = 0.841222E+01 + PKER_RACCSS( 32, 5) = 0.687405E+01 + PKER_RACCSS( 32, 6) = 0.560018E+01 + PKER_RACCSS( 32, 7) = 0.454517E+01 + PKER_RACCSS( 32, 8) = 0.367144E+01 + PKER_RACCSS( 32, 9) = 0.294789E+01 + PKER_RACCSS( 32, 10) = 0.234884E+01 + PKER_RACCSS( 32, 11) = 0.185306E+01 + PKER_RACCSS( 32, 12) = 0.144305E+01 + PKER_RACCSS( 32, 13) = 0.110439E+01 + PKER_RACCSS( 32, 14) = 0.825390E+00 + PKER_RACCSS( 32, 15) = 0.597084E+00 + PKER_RACCSS( 32, 16) = 0.413476E+00 + PKER_RACCSS( 32, 17) = 0.272077E+00 + PKER_RACCSS( 32, 18) = 0.174803E+00 + PKER_RACCSS( 32, 19) = 0.124293E+00 + PKER_RACCSS( 32, 20) = 0.118931E+00 + PKER_RACCSS( 32, 21) = 0.146554E+00 + PKER_RACCSS( 32, 22) = 0.188828E+00 + PKER_RACCSS( 32, 23) = 0.230954E+00 + PKER_RACCSS( 32, 24) = 0.266952E+00 + PKER_RACCSS( 32, 25) = 0.296435E+00 + PKER_RACCSS( 32, 26) = 0.320462E+00 + PKER_RACCSS( 32, 27) = 0.340075E+00 + PKER_RACCSS( 32, 28) = 0.356117E+00 + PKER_RACCSS( 32, 29) = 0.369263E+00 + PKER_RACCSS( 32, 30) = 0.380055E+00 + PKER_RACCSS( 32, 31) = 0.388926E+00 + PKER_RACCSS( 32, 32) = 0.396228E+00 + PKER_RACCSS( 32, 33) = 0.402245E+00 + PKER_RACCSS( 32, 34) = 0.407208E+00 + PKER_RACCSS( 32, 35) = 0.411303E+00 + PKER_RACCSS( 32, 36) = 0.414685E+00 + PKER_RACCSS( 32, 37) = 0.417479E+00 + PKER_RACCSS( 32, 38) = 0.419788E+00 + PKER_RACCSS( 32, 39) = 0.421697E+00 + PKER_RACCSS( 32, 40) = 0.423276E+00 + PKER_RACCSS( 33, 1) = 0.152252E+02 + PKER_RACCSS( 33, 2) = 0.125166E+02 + PKER_RACCSS( 33, 3) = 0.102737E+02 + PKER_RACCSS( 33, 4) = 0.841642E+01 + PKER_RACCSS( 33, 5) = 0.687832E+01 + PKER_RACCSS( 33, 6) = 0.560452E+01 + PKER_RACCSS( 33, 7) = 0.454958E+01 + PKER_RACCSS( 33, 8) = 0.367590E+01 + PKER_RACCSS( 33, 9) = 0.295241E+01 + PKER_RACCSS( 33, 10) = 0.235339E+01 + PKER_RACCSS( 33, 11) = 0.185763E+01 + PKER_RACCSS( 33, 12) = 0.144761E+01 + PKER_RACCSS( 33, 13) = 0.110891E+01 + PKER_RACCSS( 33, 14) = 0.829809E+00 + PKER_RACCSS( 33, 15) = 0.601298E+00 + PKER_RACCSS( 33, 16) = 0.417299E+00 + PKER_RACCSS( 33, 17) = 0.275084E+00 + PKER_RACCSS( 33, 18) = 0.176517E+00 + PKER_RACCSS( 33, 19) = 0.124255E+00 + PKER_RACCSS( 33, 20) = 0.117165E+00 + PKER_RACCSS( 33, 21) = 0.143564E+00 + PKER_RACCSS( 33, 22) = 0.185315E+00 + PKER_RACCSS( 33, 23) = 0.227330E+00 + PKER_RACCSS( 33, 24) = 0.263338E+00 + PKER_RACCSS( 33, 25) = 0.292840E+00 + PKER_RACCSS( 33, 26) = 0.316875E+00 + PKER_RACCSS( 33, 27) = 0.336491E+00 + PKER_RACCSS( 33, 28) = 0.352533E+00 + PKER_RACCSS( 33, 29) = 0.365676E+00 + PKER_RACCSS( 33, 30) = 0.376463E+00 + PKER_RACCSS( 33, 31) = 0.385329E+00 + PKER_RACCSS( 33, 32) = 0.392627E+00 + PKER_RACCSS( 33, 33) = 0.398639E+00 + PKER_RACCSS( 33, 34) = 0.403598E+00 + PKER_RACCSS( 33, 35) = 0.407690E+00 + PKER_RACCSS( 33, 36) = 0.411069E+00 + PKER_RACCSS( 33, 37) = 0.413860E+00 + PKER_RACCSS( 33, 38) = 0.416168E+00 + PKER_RACCSS( 33, 39) = 0.418075E+00 + PKER_RACCSS( 33, 40) = 0.419653E+00 + PKER_RACCSS( 34, 1) = 0.152248E+02 + PKER_RACCSS( 34, 2) = 0.125162E+02 + PKER_RACCSS( 34, 3) = 0.102733E+02 + PKER_RACCSS( 34, 4) = 0.841600E+01 + PKER_RACCSS( 34, 5) = 0.687791E+01 + PKER_RACCSS( 34, 6) = 0.560412E+01 + PKER_RACCSS( 34, 7) = 0.454919E+01 + PKER_RACCSS( 34, 8) = 0.367553E+01 + PKER_RACCSS( 34, 9) = 0.295206E+01 + PKER_RACCSS( 34, 10) = 0.235307E+01 + PKER_RACCSS( 34, 11) = 0.185734E+01 + PKER_RACCSS( 34, 12) = 0.144736E+01 + PKER_RACCSS( 34, 13) = 0.110872E+01 + PKER_RACCSS( 34, 14) = 0.829656E+00 + PKER_RACCSS( 34, 15) = 0.601205E+00 + PKER_RACCSS( 34, 16) = 0.417236E+00 + PKER_RACCSS( 34, 17) = 0.275045E+00 + PKER_RACCSS( 34, 18) = 0.176424E+00 + PKER_RACCSS( 34, 19) = 0.124044E+00 + PKER_RACCSS( 34, 20) = 0.116894E+00 + PKER_RACCSS( 34, 21) = 0.143258E+00 + PKER_RACCSS( 34, 22) = 0.184999E+00 + PKER_RACCSS( 34, 23) = 0.226991E+00 + PKER_RACCSS( 34, 24) = 0.262972E+00 + PKER_RACCSS( 34, 25) = 0.292447E+00 + PKER_RACCSS( 34, 26) = 0.316461E+00 + PKER_RACCSS( 34, 27) = 0.336058E+00 + PKER_RACCSS( 34, 28) = 0.352084E+00 + PKER_RACCSS( 34, 29) = 0.365214E+00 + PKER_RACCSS( 34, 30) = 0.375991E+00 + PKER_RACCSS( 34, 31) = 0.384849E+00 + PKER_RACCSS( 34, 32) = 0.392140E+00 + PKER_RACCSS( 34, 33) = 0.398147E+00 + PKER_RACCSS( 34, 34) = 0.403101E+00 + PKER_RACCSS( 34, 35) = 0.407190E+00 + PKER_RACCSS( 34, 36) = 0.410566E+00 + PKER_RACCSS( 34, 37) = 0.413355E+00 + PKER_RACCSS( 34, 38) = 0.415661E+00 + PKER_RACCSS( 34, 39) = 0.417567E+00 + PKER_RACCSS( 34, 40) = 0.419144E+00 + PKER_RACCSS( 35, 1) = 0.152287E+02 + PKER_RACCSS( 35, 2) = 0.125202E+02 + PKER_RACCSS( 35, 3) = 0.102773E+02 + PKER_RACCSS( 35, 4) = 0.842010E+01 + PKER_RACCSS( 35, 5) = 0.688207E+01 + PKER_RACCSS( 35, 6) = 0.560834E+01 + PKER_RACCSS( 35, 7) = 0.455346E+01 + PKER_RACCSS( 35, 8) = 0.367984E+01 + PKER_RACCSS( 35, 9) = 0.295641E+01 + PKER_RACCSS( 35, 10) = 0.235744E+01 + PKER_RACCSS( 35, 11) = 0.186171E+01 + PKER_RACCSS( 35, 12) = 0.145171E+01 + PKER_RACCSS( 35, 13) = 0.111300E+01 + PKER_RACCSS( 35, 14) = 0.833823E+00 + PKER_RACCSS( 35, 15) = 0.605161E+00 + PKER_RACCSS( 35, 16) = 0.420842E+00 + PKER_RACCSS( 35, 17) = 0.277903E+00 + PKER_RACCSS( 35, 18) = 0.178147E+00 + PKER_RACCSS( 35, 19) = 0.124171E+00 + PKER_RACCSS( 35, 20) = 0.115464E+00 + PKER_RACCSS( 35, 21) = 0.140674E+00 + PKER_RACCSS( 35, 22) = 0.181919E+00 + PKER_RACCSS( 35, 23) = 0.223809E+00 + PKER_RACCSS( 35, 24) = 0.259812E+00 + PKER_RACCSS( 35, 25) = 0.289318E+00 + PKER_RACCSS( 35, 26) = 0.313352E+00 + PKER_RACCSS( 35, 27) = 0.332962E+00 + PKER_RACCSS( 35, 28) = 0.348995E+00 + PKER_RACCSS( 35, 29) = 0.362129E+00 + PKER_RACCSS( 35, 30) = 0.372907E+00 + PKER_RACCSS( 35, 31) = 0.381764E+00 + PKER_RACCSS( 35, 32) = 0.389054E+00 + PKER_RACCSS( 35, 33) = 0.395060E+00 + PKER_RACCSS( 35, 34) = 0.400012E+00 + PKER_RACCSS( 35, 35) = 0.404099E+00 + PKER_RACCSS( 35, 36) = 0.407474E+00 + PKER_RACCSS( 35, 37) = 0.410263E+00 + PKER_RACCSS( 35, 38) = 0.412567E+00 + PKER_RACCSS( 35, 39) = 0.414473E+00 + PKER_RACCSS( 35, 40) = 0.416049E+00 + PKER_RACCSS( 36, 1) = 0.152383E+02 + PKER_RACCSS( 36, 2) = 0.125299E+02 + PKER_RACCSS( 36, 3) = 0.102873E+02 + PKER_RACCSS( 36, 4) = 0.843016E+01 + PKER_RACCSS( 36, 5) = 0.689226E+01 + PKER_RACCSS( 36, 6) = 0.561865E+01 + PKER_RACCSS( 36, 7) = 0.456388E+01 + PKER_RACCSS( 36, 8) = 0.369036E+01 + PKER_RACCSS( 36, 9) = 0.296698E+01 + PKER_RACCSS( 36, 10) = 0.236804E+01 + PKER_RACCSS( 36, 11) = 0.187228E+01 + PKER_RACCSS( 36, 12) = 0.146219E+01 + PKER_RACCSS( 36, 13) = 0.112330E+01 + PKER_RACCSS( 36, 14) = 0.843833E+00 + PKER_RACCSS( 36, 15) = 0.614630E+00 + PKER_RACCSS( 36, 16) = 0.429489E+00 + PKER_RACCSS( 36, 17) = 0.284782E+00 + PKER_RACCSS( 36, 18) = 0.182494E+00 + PKER_RACCSS( 36, 19) = 0.124882E+00 + PKER_RACCSS( 36, 20) = 0.112591E+00 + PKER_RACCSS( 36, 21) = 0.135019E+00 + PKER_RACCSS( 36, 22) = 0.174978E+00 + PKER_RACCSS( 36, 23) = 0.216615E+00 + PKER_RACCSS( 36, 24) = 0.252695E+00 + PKER_RACCSS( 36, 25) = 0.282303E+00 + PKER_RACCSS( 36, 26) = 0.306412E+00 + PKER_RACCSS( 36, 27) = 0.326073E+00 + PKER_RACCSS( 36, 28) = 0.342140E+00 + PKER_RACCSS( 36, 29) = 0.355295E+00 + PKER_RACCSS( 36, 30) = 0.366087E+00 + PKER_RACCSS( 36, 31) = 0.374952E+00 + PKER_RACCSS( 36, 32) = 0.382247E+00 + PKER_RACCSS( 36, 33) = 0.388255E+00 + PKER_RACCSS( 36, 34) = 0.393208E+00 + PKER_RACCSS( 36, 35) = 0.397296E+00 + PKER_RACCSS( 36, 36) = 0.400670E+00 + PKER_RACCSS( 36, 37) = 0.403458E+00 + PKER_RACCSS( 36, 38) = 0.405763E+00 + PKER_RACCSS( 36, 39) = 0.407668E+00 + PKER_RACCSS( 36, 40) = 0.409243E+00 + PKER_RACCSS( 37, 1) = 0.000000E+00 + PKER_RACCSS( 37, 2) = 0.000000E+00 + PKER_RACCSS( 37, 3) = 0.000000E+00 + PKER_RACCSS( 37, 4) = 0.000000E+00 + PKER_RACCSS( 37, 5) = 0.000000E+00 + PKER_RACCSS( 37, 6) = 0.000000E+00 + PKER_RACCSS( 37, 7) = 0.000000E+00 + PKER_RACCSS( 37, 8) = 0.000000E+00 + PKER_RACCSS( 37, 9) = 0.000000E+00 + PKER_RACCSS( 37, 10) = 0.000000E+00 + PKER_RACCSS( 37, 11) = 0.000000E+00 + PKER_RACCSS( 37, 12) = 0.000000E+00 + PKER_RACCSS( 37, 13) = 0.000000E+00 + PKER_RACCSS( 37, 14) = 0.000000E+00 + PKER_RACCSS( 37, 15) = 0.000000E+00 + PKER_RACCSS( 37, 16) = 0.000000E+00 + PKER_RACCSS( 37, 17) = 0.000000E+00 + PKER_RACCSS( 37, 18) = 0.000000E+00 + PKER_RACCSS( 37, 19) = 0.000000E+00 + PKER_RACCSS( 37, 20) = 0.000000E+00 + PKER_RACCSS( 37, 21) = 0.000000E+00 + PKER_RACCSS( 37, 22) = 0.000000E+00 + PKER_RACCSS( 37, 23) = 0.000000E+00 + PKER_RACCSS( 37, 24) = 0.000000E+00 + PKER_RACCSS( 37, 25) = 0.000000E+00 + PKER_RACCSS( 37, 26) = 0.000000E+00 + PKER_RACCSS( 37, 27) = 0.000000E+00 + PKER_RACCSS( 37, 28) = 0.000000E+00 + PKER_RACCSS( 37, 29) = 0.000000E+00 + PKER_RACCSS( 37, 30) = 0.000000E+00 + PKER_RACCSS( 37, 31) = 0.000000E+00 + PKER_RACCSS( 37, 32) = 0.000000E+00 + PKER_RACCSS( 37, 33) = 0.000000E+00 + PKER_RACCSS( 37, 34) = 0.000000E+00 + PKER_RACCSS( 37, 35) = 0.000000E+00 + PKER_RACCSS( 37, 36) = 0.000000E+00 + PKER_RACCSS( 37, 37) = 0.000000E+00 + PKER_RACCSS( 37, 38) = 0.000000E+00 + PKER_RACCSS( 37, 39) = 0.000000E+00 + PKER_RACCSS( 37, 40) = 0.000000E+00 + PKER_RACCSS( 38, 1) = 0.000000E+00 + PKER_RACCSS( 38, 2) = 0.000000E+00 + PKER_RACCSS( 38, 3) = 0.000000E+00 + PKER_RACCSS( 38, 4) = 0.000000E+00 + PKER_RACCSS( 38, 5) = 0.000000E+00 + PKER_RACCSS( 38, 6) = 0.000000E+00 + PKER_RACCSS( 38, 7) = 0.000000E+00 + PKER_RACCSS( 38, 8) = 0.000000E+00 + PKER_RACCSS( 38, 9) = 0.000000E+00 + PKER_RACCSS( 38, 10) = 0.000000E+00 + PKER_RACCSS( 38, 11) = 0.000000E+00 + PKER_RACCSS( 38, 12) = 0.000000E+00 + PKER_RACCSS( 38, 13) = 0.000000E+00 + PKER_RACCSS( 38, 14) = 0.000000E+00 + PKER_RACCSS( 38, 15) = 0.000000E+00 + PKER_RACCSS( 38, 16) = 0.000000E+00 + PKER_RACCSS( 38, 17) = 0.000000E+00 + PKER_RACCSS( 38, 18) = 0.000000E+00 + PKER_RACCSS( 38, 19) = 0.000000E+00 + PKER_RACCSS( 38, 20) = 0.000000E+00 + PKER_RACCSS( 38, 21) = 0.000000E+00 + PKER_RACCSS( 38, 22) = 0.000000E+00 + PKER_RACCSS( 38, 23) = 0.000000E+00 + PKER_RACCSS( 38, 24) = 0.000000E+00 + PKER_RACCSS( 38, 25) = 0.000000E+00 + PKER_RACCSS( 38, 26) = 0.000000E+00 + PKER_RACCSS( 38, 27) = 0.000000E+00 + PKER_RACCSS( 38, 28) = 0.000000E+00 + PKER_RACCSS( 38, 29) = 0.000000E+00 + PKER_RACCSS( 38, 30) = 0.000000E+00 + PKER_RACCSS( 38, 31) = 0.000000E+00 + PKER_RACCSS( 38, 32) = 0.000000E+00 + PKER_RACCSS( 38, 33) = 0.000000E+00 + PKER_RACCSS( 38, 34) = 0.000000E+00 + PKER_RACCSS( 38, 35) = 0.000000E+00 + PKER_RACCSS( 38, 36) = 0.000000E+00 + PKER_RACCSS( 38, 37) = 0.000000E+00 + PKER_RACCSS( 38, 38) = 0.000000E+00 + PKER_RACCSS( 38, 39) = 0.000000E+00 + PKER_RACCSS( 38, 40) = 0.000000E+00 + PKER_RACCSS( 39, 1) = 0.000000E+00 + PKER_RACCSS( 39, 2) = 0.000000E+00 + PKER_RACCSS( 39, 3) = 0.000000E+00 + PKER_RACCSS( 39, 4) = 0.000000E+00 + PKER_RACCSS( 39, 5) = 0.000000E+00 + PKER_RACCSS( 39, 6) = 0.000000E+00 + PKER_RACCSS( 39, 7) = 0.000000E+00 + PKER_RACCSS( 39, 8) = 0.000000E+00 + PKER_RACCSS( 39, 9) = 0.000000E+00 + PKER_RACCSS( 39, 10) = 0.000000E+00 + PKER_RACCSS( 39, 11) = 0.000000E+00 + PKER_RACCSS( 39, 12) = 0.000000E+00 + PKER_RACCSS( 39, 13) = 0.000000E+00 + PKER_RACCSS( 39, 14) = 0.000000E+00 + PKER_RACCSS( 39, 15) = 0.000000E+00 + PKER_RACCSS( 39, 16) = 0.000000E+00 + PKER_RACCSS( 39, 17) = 0.000000E+00 + PKER_RACCSS( 39, 18) = 0.000000E+00 + PKER_RACCSS( 39, 19) = 0.000000E+00 + PKER_RACCSS( 39, 20) = 0.000000E+00 + PKER_RACCSS( 39, 21) = 0.000000E+00 + PKER_RACCSS( 39, 22) = 0.000000E+00 + PKER_RACCSS( 39, 23) = 0.000000E+00 + PKER_RACCSS( 39, 24) = 0.000000E+00 + PKER_RACCSS( 39, 25) = 0.000000E+00 + PKER_RACCSS( 39, 26) = 0.000000E+00 + PKER_RACCSS( 39, 27) = 0.000000E+00 + PKER_RACCSS( 39, 28) = 0.000000E+00 + PKER_RACCSS( 39, 29) = 0.000000E+00 + PKER_RACCSS( 39, 30) = 0.000000E+00 + PKER_RACCSS( 39, 31) = 0.000000E+00 + PKER_RACCSS( 39, 32) = 0.000000E+00 + PKER_RACCSS( 39, 33) = 0.000000E+00 + PKER_RACCSS( 39, 34) = 0.000000E+00 + PKER_RACCSS( 39, 35) = 0.000000E+00 + PKER_RACCSS( 39, 36) = 0.000000E+00 + PKER_RACCSS( 39, 37) = 0.000000E+00 + PKER_RACCSS( 39, 38) = 0.000000E+00 + PKER_RACCSS( 39, 39) = 0.000000E+00 + PKER_RACCSS( 39, 40) = 0.000000E+00 + PKER_RACCSS( 40, 1) = 0.000000E+00 + PKER_RACCSS( 40, 2) = 0.000000E+00 + PKER_RACCSS( 40, 3) = 0.000000E+00 + PKER_RACCSS( 40, 4) = 0.000000E+00 + PKER_RACCSS( 40, 5) = 0.000000E+00 + PKER_RACCSS( 40, 6) = 0.000000E+00 + PKER_RACCSS( 40, 7) = 0.000000E+00 + PKER_RACCSS( 40, 8) = 0.000000E+00 + PKER_RACCSS( 40, 9) = 0.000000E+00 + PKER_RACCSS( 40, 10) = 0.000000E+00 + PKER_RACCSS( 40, 11) = 0.000000E+00 + PKER_RACCSS( 40, 12) = 0.000000E+00 + PKER_RACCSS( 40, 13) = 0.000000E+00 + PKER_RACCSS( 40, 14) = 0.000000E+00 + PKER_RACCSS( 40, 15) = 0.000000E+00 + PKER_RACCSS( 40, 16) = 0.000000E+00 + PKER_RACCSS( 40, 17) = 0.000000E+00 + PKER_RACCSS( 40, 18) = 0.000000E+00 + PKER_RACCSS( 40, 19) = 0.000000E+00 + PKER_RACCSS( 40, 20) = 0.000000E+00 + PKER_RACCSS( 40, 21) = 0.000000E+00 + PKER_RACCSS( 40, 22) = 0.000000E+00 + PKER_RACCSS( 40, 23) = 0.000000E+00 + PKER_RACCSS( 40, 24) = 0.000000E+00 + PKER_RACCSS( 40, 25) = 0.000000E+00 + PKER_RACCSS( 40, 26) = 0.000000E+00 + PKER_RACCSS( 40, 27) = 0.000000E+00 + PKER_RACCSS( 40, 28) = 0.000000E+00 + PKER_RACCSS( 40, 29) = 0.000000E+00 + PKER_RACCSS( 40, 30) = 0.000000E+00 + PKER_RACCSS( 40, 31) = 0.000000E+00 + PKER_RACCSS( 40, 32) = 0.000000E+00 + PKER_RACCSS( 40, 33) = 0.000000E+00 + PKER_RACCSS( 40, 34) = 0.000000E+00 + PKER_RACCSS( 40, 35) = 0.000000E+00 + PKER_RACCSS( 40, 36) = 0.000000E+00 + PKER_RACCSS( 40, 37) = 0.000000E+00 + PKER_RACCSS( 40, 38) = 0.000000E+00 + PKER_RACCSS( 40, 39) = 0.000000E+00 + PKER_RACCSS( 40, 40) = 0.000000E+00 +END IF +! +IF( PRESENT(PKER_RACCS ) ) THEN + PKER_RACCS ( 1, 1) = 0.102167E+02 + PKER_RACCS ( 1, 2) = 0.798984E+01 + PKER_RACCS ( 1, 3) = 0.617380E+01 + PKER_RACCS ( 1, 4) = 0.469167E+01 + PKER_RACCS ( 1, 5) = 0.348534E+01 + PKER_RACCS ( 1, 6) = 0.251422E+01 + PKER_RACCS ( 1, 7) = 0.175460E+01 + PKER_RACCS ( 1, 8) = 0.119906E+01 + PKER_RACCS ( 1, 9) = 0.848431E+00 + PKER_RACCS ( 1, 10) = 0.697315E+00 + PKER_RACCS ( 1, 11) = 0.717816E+00 + PKER_RACCS ( 1, 12) = 0.854882E+00 + PKER_RACCS ( 1, 13) = 0.104470E+01 + PKER_RACCS ( 1, 14) = 0.123807E+01 + PKER_RACCS ( 1, 15) = 0.141081E+01 + PKER_RACCS ( 1, 16) = 0.155700E+01 + PKER_RACCS ( 1, 17) = 0.167856E+01 + PKER_RACCS ( 1, 18) = 0.177921E+01 + PKER_RACCS ( 1, 19) = 0.186250E+01 + PKER_RACCS ( 1, 20) = 0.193142E+01 + PKER_RACCS ( 1, 21) = 0.198845E+01 + PKER_RACCS ( 1, 22) = 0.203565E+01 + PKER_RACCS ( 1, 23) = 0.207472E+01 + PKER_RACCS ( 1, 24) = 0.210705E+01 + PKER_RACCS ( 1, 25) = 0.213381E+01 + PKER_RACCS ( 1, 26) = 0.215596E+01 + PKER_RACCS ( 1, 27) = 0.217429E+01 + PKER_RACCS ( 1, 28) = 0.218947E+01 + PKER_RACCS ( 1, 29) = 0.220203E+01 + PKER_RACCS ( 1, 30) = 0.221243E+01 + PKER_RACCS ( 1, 31) = 0.222103E+01 + PKER_RACCS ( 1, 32) = 0.222816E+01 + PKER_RACCS ( 1, 33) = 0.223406E+01 + PKER_RACCS ( 1, 34) = 0.223894E+01 + PKER_RACCS ( 1, 35) = 0.224298E+01 + PKER_RACCS ( 1, 36) = 0.224632E+01 + PKER_RACCS ( 1, 37) = 0.224909E+01 + PKER_RACCS ( 1, 38) = 0.225138E+01 + PKER_RACCS ( 1, 39) = 0.225328E+01 + PKER_RACCS ( 1, 40) = 0.225485E+01 + PKER_RACCS ( 2, 1) = 0.104818E+02 + PKER_RACCS ( 2, 2) = 0.821523E+01 + PKER_RACCS ( 2, 3) = 0.637111E+01 + PKER_RACCS ( 2, 4) = 0.486846E+01 + PKER_RACCS ( 2, 5) = 0.364524E+01 + PKER_RACCS ( 2, 6) = 0.265651E+01 + PKER_RACCS ( 2, 7) = 0.187379E+01 + PKER_RACCS ( 2, 8) = 0.128476E+01 + PKER_RACCS ( 2, 9) = 0.888040E+00 + PKER_RACCS ( 2, 10) = 0.682820E+00 + PKER_RACCS ( 2, 11) = 0.651649E+00 + PKER_RACCS ( 2, 12) = 0.749498E+00 + PKER_RACCS ( 2, 13) = 0.917050E+00 + PKER_RACCS ( 2, 14) = 0.110111E+01 + PKER_RACCS ( 2, 15) = 0.127111E+01 + PKER_RACCS ( 2, 16) = 0.141681E+01 + PKER_RACCS ( 2, 17) = 0.153841E+01 + PKER_RACCS ( 2, 18) = 0.163915E+01 + PKER_RACCS ( 2, 19) = 0.172252E+01 + PKER_RACCS ( 2, 20) = 0.179149E+01 + PKER_RACCS ( 2, 21) = 0.184857E+01 + PKER_RACCS ( 2, 22) = 0.189580E+01 + PKER_RACCS ( 2, 23) = 0.193488E+01 + PKER_RACCS ( 2, 24) = 0.196723E+01 + PKER_RACCS ( 2, 25) = 0.199401E+01 + PKER_RACCS ( 2, 26) = 0.201617E+01 + PKER_RACCS ( 2, 27) = 0.203451E+01 + PKER_RACCS ( 2, 28) = 0.204969E+01 + PKER_RACCS ( 2, 29) = 0.206226E+01 + PKER_RACCS ( 2, 30) = 0.207266E+01 + PKER_RACCS ( 2, 31) = 0.208127E+01 + PKER_RACCS ( 2, 32) = 0.208839E+01 + PKER_RACCS ( 2, 33) = 0.209429E+01 + PKER_RACCS ( 2, 34) = 0.209918E+01 + PKER_RACCS ( 2, 35) = 0.210322E+01 + PKER_RACCS ( 2, 36) = 0.210656E+01 + PKER_RACCS ( 2, 37) = 0.210933E+01 + PKER_RACCS ( 2, 38) = 0.211163E+01 + PKER_RACCS ( 2, 39) = 0.211352E+01 + PKER_RACCS ( 2, 40) = 0.211509E+01 + PKER_RACCS ( 3, 1) = 0.107644E+02 + PKER_RACCS ( 3, 2) = 0.845121E+01 + PKER_RACCS ( 3, 3) = 0.657371E+01 + PKER_RACCS ( 3, 4) = 0.504697E+01 + PKER_RACCS ( 3, 5) = 0.380515E+01 + PKER_RACCS ( 3, 6) = 0.279922E+01 + PKER_RACCS ( 3, 7) = 0.199615E+01 + PKER_RACCS ( 3, 8) = 0.137873E+01 + PKER_RACCS ( 3, 9) = 0.942712E+00 + PKER_RACCS ( 3, 10) = 0.688122E+00 + PKER_RACCS ( 3, 11) = 0.605662E+00 + PKER_RACCS ( 3, 12) = 0.661434E+00 + PKER_RACCS ( 3, 13) = 0.802624E+00 + PKER_RACCS ( 3, 14) = 0.974479E+00 + PKER_RACCS ( 3, 15) = 0.114040E+01 + PKER_RACCS ( 3, 16) = 0.128524E+01 + PKER_RACCS ( 3, 17) = 0.140682E+01 + PKER_RACCS ( 3, 18) = 0.150766E+01 + PKER_RACCS ( 3, 19) = 0.159112E+01 + PKER_RACCS ( 3, 20) = 0.166016E+01 + PKER_RACCS ( 3, 21) = 0.171729E+01 + PKER_RACCS ( 3, 22) = 0.176455E+01 + PKER_RACCS ( 3, 23) = 0.180367E+01 + PKER_RACCS ( 3, 24) = 0.183604E+01 + PKER_RACCS ( 3, 25) = 0.186283E+01 + PKER_RACCS ( 3, 26) = 0.188500E+01 + PKER_RACCS ( 3, 27) = 0.190335E+01 + PKER_RACCS ( 3, 28) = 0.191854E+01 + PKER_RACCS ( 3, 29) = 0.193111E+01 + PKER_RACCS ( 3, 30) = 0.194152E+01 + PKER_RACCS ( 3, 31) = 0.195013E+01 + PKER_RACCS ( 3, 32) = 0.195726E+01 + PKER_RACCS ( 3, 33) = 0.196316E+01 + PKER_RACCS ( 3, 34) = 0.196805E+01 + PKER_RACCS ( 3, 35) = 0.197209E+01 + PKER_RACCS ( 3, 36) = 0.197544E+01 + PKER_RACCS ( 3, 37) = 0.197821E+01 + PKER_RACCS ( 3, 38) = 0.198050E+01 + PKER_RACCS ( 3, 39) = 0.198240E+01 + PKER_RACCS ( 3, 40) = 0.198397E+01 + PKER_RACCS ( 4, 1) = 0.110672E+02 + PKER_RACCS ( 4, 2) = 0.870087E+01 + PKER_RACCS ( 4, 3) = 0.678439E+01 + PKER_RACCS ( 4, 4) = 0.522941E+01 + PKER_RACCS ( 4, 5) = 0.396642E+01 + PKER_RACCS ( 4, 6) = 0.294262E+01 + PKER_RACCS ( 4, 7) = 0.212084E+01 + PKER_RACCS ( 4, 8) = 0.147885E+01 + PKER_RACCS ( 4, 9) = 0.100866E+01 + PKER_RACCS ( 4, 10) = 0.710145E+00 + PKER_RACCS ( 4, 11) = 0.578505E+00 + PKER_RACCS ( 4, 12) = 0.590976E+00 + PKER_RACCS ( 4, 13) = 0.701961E+00 + PKER_RACCS ( 4, 14) = 0.858251E+00 + PKER_RACCS ( 4, 15) = 0.101841E+01 + PKER_RACCS ( 4, 16) = 0.116181E+01 + PKER_RACCS ( 4, 17) = 0.128324E+01 + PKER_RACCS ( 4, 18) = 0.138420E+01 + PKER_RACCS ( 4, 19) = 0.146776E+01 + PKER_RACCS ( 4, 20) = 0.153689E+01 + PKER_RACCS ( 4, 21) = 0.159407E+01 + PKER_RACCS ( 4, 22) = 0.164139E+01 + PKER_RACCS ( 4, 23) = 0.168054E+01 + PKER_RACCS ( 4, 24) = 0.171293E+01 + PKER_RACCS ( 4, 25) = 0.173974E+01 + PKER_RACCS ( 4, 26) = 0.176193E+01 + PKER_RACCS ( 4, 27) = 0.178029E+01 + PKER_RACCS ( 4, 28) = 0.179549E+01 + PKER_RACCS ( 4, 29) = 0.180807E+01 + PKER_RACCS ( 4, 30) = 0.181848E+01 + PKER_RACCS ( 4, 31) = 0.182709E+01 + PKER_RACCS ( 4, 32) = 0.183423E+01 + PKER_RACCS ( 4, 33) = 0.184013E+01 + PKER_RACCS ( 4, 34) = 0.184502E+01 + PKER_RACCS ( 4, 35) = 0.184906E+01 + PKER_RACCS ( 4, 36) = 0.185241E+01 + PKER_RACCS ( 4, 37) = 0.185518E+01 + PKER_RACCS ( 4, 38) = 0.185747E+01 + PKER_RACCS ( 4, 39) = 0.185937E+01 + PKER_RACCS ( 4, 40) = 0.186094E+01 + PKER_RACCS ( 5, 1) = 0.113912E+02 + PKER_RACCS ( 5, 2) = 0.896656E+01 + PKER_RACCS ( 5, 3) = 0.700573E+01 + PKER_RACCS ( 5, 4) = 0.541800E+01 + PKER_RACCS ( 5, 5) = 0.413072E+01 + PKER_RACCS ( 5, 6) = 0.308761E+01 + PKER_RACCS ( 5, 7) = 0.224753E+01 + PKER_RACCS ( 5, 8) = 0.158389E+01 + PKER_RACCS ( 5, 9) = 0.108428E+01 + PKER_RACCS ( 5, 10) = 0.746312E+00 + PKER_RACCS ( 5, 11) = 0.568858E+00 + PKER_RACCS ( 5, 12) = 0.537607E+00 + PKER_RACCS ( 5, 13) = 0.615320E+00 + PKER_RACCS ( 5, 14) = 0.752699E+00 + PKER_RACCS ( 5, 15) = 0.904977E+00 + PKER_RACCS ( 5, 16) = 0.104611E+01 + PKER_RACCS ( 5, 17) = 0.116720E+01 + PKER_RACCS ( 5, 18) = 0.126824E+01 + PKER_RACCS ( 5, 19) = 0.135194E+01 + PKER_RACCS ( 5, 20) = 0.142116E+01 + PKER_RACCS ( 5, 21) = 0.147842E+01 + PKER_RACCS ( 5, 22) = 0.152579E+01 + PKER_RACCS ( 5, 23) = 0.156498E+01 + PKER_RACCS ( 5, 24) = 0.159741E+01 + PKER_RACCS ( 5, 25) = 0.162424E+01 + PKER_RACCS ( 5, 26) = 0.164644E+01 + PKER_RACCS ( 5, 27) = 0.166482E+01 + PKER_RACCS ( 5, 28) = 0.168003E+01 + PKER_RACCS ( 5, 29) = 0.169261E+01 + PKER_RACCS ( 5, 30) = 0.170303E+01 + PKER_RACCS ( 5, 31) = 0.171165E+01 + PKER_RACCS ( 5, 32) = 0.171879E+01 + PKER_RACCS ( 5, 33) = 0.172469E+01 + PKER_RACCS ( 5, 34) = 0.172958E+01 + PKER_RACCS ( 5, 35) = 0.173363E+01 + PKER_RACCS ( 5, 36) = 0.173698E+01 + PKER_RACCS ( 5, 37) = 0.173975E+01 + PKER_RACCS ( 5, 38) = 0.174205E+01 + PKER_RACCS ( 5, 39) = 0.174395E+01 + PKER_RACCS ( 5, 40) = 0.174552E+01 + PKER_RACCS ( 6, 1) = 0.117349E+02 + PKER_RACCS ( 6, 2) = 0.924914E+01 + PKER_RACCS ( 6, 3) = 0.723971E+01 + PKER_RACCS ( 6, 4) = 0.561487E+01 + PKER_RACCS ( 6, 5) = 0.429976E+01 + PKER_RACCS ( 6, 6) = 0.323520E+01 + PKER_RACCS ( 6, 7) = 0.237647E+01 + PKER_RACCS ( 6, 8) = 0.169289E+01 + PKER_RACCS ( 6, 9) = 0.116768E+01 + PKER_RACCS ( 6, 10) = 0.795704E+00 + PKER_RACCS ( 6, 11) = 0.576137E+00 + PKER_RACCS ( 6, 12) = 0.501314E+00 + PKER_RACCS ( 6, 13) = 0.543341E+00 + PKER_RACCS ( 6, 14) = 0.658228E+00 + PKER_RACCS ( 6, 15) = 0.800085E+00 + PKER_RACCS ( 6, 16) = 0.937788E+00 + PKER_RACCS ( 6, 17) = 0.105821E+01 + PKER_RACCS ( 6, 18) = 0.115932E+01 + PKER_RACCS ( 6, 19) = 0.124316E+01 + PKER_RACCS ( 6, 20) = 0.131250E+01 + PKER_RACCS ( 6, 21) = 0.136985E+01 + PKER_RACCS ( 6, 22) = 0.141729E+01 + PKER_RACCS ( 6, 23) = 0.145653E+01 + PKER_RACCS ( 6, 24) = 0.148899E+01 + PKER_RACCS ( 6, 25) = 0.151585E+01 + PKER_RACCS ( 6, 26) = 0.153808E+01 + PKER_RACCS ( 6, 27) = 0.155647E+01 + PKER_RACCS ( 6, 28) = 0.157169E+01 + PKER_RACCS ( 6, 29) = 0.158429E+01 + PKER_RACCS ( 6, 30) = 0.159471E+01 + PKER_RACCS ( 6, 31) = 0.160334E+01 + PKER_RACCS ( 6, 32) = 0.161048E+01 + PKER_RACCS ( 6, 33) = 0.161639E+01 + PKER_RACCS ( 6, 34) = 0.162128E+01 + PKER_RACCS ( 6, 35) = 0.162533E+01 + PKER_RACCS ( 6, 36) = 0.162868E+01 + PKER_RACCS ( 6, 37) = 0.163145E+01 + PKER_RACCS ( 6, 38) = 0.163375E+01 + PKER_RACCS ( 6, 39) = 0.163565E+01 + PKER_RACCS ( 6, 40) = 0.163722E+01 + PKER_RACCS ( 7, 1) = 0.120933E+02 + PKER_RACCS ( 7, 2) = 0.954726E+01 + PKER_RACCS ( 7, 3) = 0.748704E+01 + PKER_RACCS ( 7, 4) = 0.582164E+01 + PKER_RACCS ( 7, 5) = 0.447529E+01 + PKER_RACCS ( 7, 6) = 0.338667E+01 + PKER_RACCS ( 7, 7) = 0.250813E+01 + PKER_RACCS ( 7, 8) = 0.180540E+01 + PKER_RACCS ( 7, 9) = 0.125732E+01 + PKER_RACCS ( 7, 10) = 0.855207E+00 + PKER_RACCS ( 7, 11) = 0.597925E+00 + PKER_RACCS ( 7, 12) = 0.481149E+00 + PKER_RACCS ( 7, 13) = 0.486186E+00 + PKER_RACCS ( 7, 14) = 0.575287E+00 + PKER_RACCS ( 7, 15) = 0.703816E+00 + PKER_RACCS ( 7, 16) = 0.836624E+00 + PKER_RACCS ( 7, 17) = 0.955895E+00 + PKER_RACCS ( 7, 18) = 0.105696E+01 + PKER_RACCS ( 7, 19) = 0.114096E+01 + PKER_RACCS ( 7, 20) = 0.121046E+01 + PKER_RACCS ( 7, 21) = 0.126792E+01 + PKER_RACCS ( 7, 22) = 0.131544E+01 + PKER_RACCS ( 7, 23) = 0.135474E+01 + PKER_RACCS ( 7, 24) = 0.138724E+01 + PKER_RACCS ( 7, 25) = 0.141414E+01 + PKER_RACCS ( 7, 26) = 0.143639E+01 + PKER_RACCS ( 7, 27) = 0.145480E+01 + PKER_RACCS ( 7, 28) = 0.147003E+01 + PKER_RACCS ( 7, 29) = 0.148264E+01 + PKER_RACCS ( 7, 30) = 0.149307E+01 + PKER_RACCS ( 7, 31) = 0.150171E+01 + PKER_RACCS ( 7, 32) = 0.150885E+01 + PKER_RACCS ( 7, 33) = 0.151477E+01 + PKER_RACCS ( 7, 34) = 0.151966E+01 + PKER_RACCS ( 7, 35) = 0.152372E+01 + PKER_RACCS ( 7, 36) = 0.152707E+01 + PKER_RACCS ( 7, 37) = 0.152984E+01 + PKER_RACCS ( 7, 38) = 0.153214E+01 + PKER_RACCS ( 7, 39) = 0.153404E+01 + PKER_RACCS ( 7, 40) = 0.153562E+01 + PKER_RACCS ( 8, 1) = 0.124583E+02 + PKER_RACCS ( 8, 2) = 0.985684E+01 + PKER_RACCS ( 8, 3) = 0.774660E+01 + PKER_RACCS ( 8, 4) = 0.603889E+01 + PKER_RACCS ( 8, 5) = 0.465857E+01 + PKER_RACCS ( 8, 6) = 0.354333E+01 + PKER_RACCS ( 8, 7) = 0.264340E+01 + PKER_RACCS ( 8, 8) = 0.192140E+01 + PKER_RACCS ( 8, 9) = 0.135239E+01 + PKER_RACCS ( 8, 10) = 0.923762E+00 + PKER_RACCS ( 8, 11) = 0.632168E+00 + PKER_RACCS ( 8, 12) = 0.476040E+00 + PKER_RACCS ( 8, 13) = 0.443617E+00 + PKER_RACCS ( 8, 14) = 0.504159E+00 + PKER_RACCS ( 8, 15) = 0.616439E+00 + PKER_RACCS ( 8, 16) = 0.742493E+00 + PKER_RACCS ( 8, 17) = 0.859895E+00 + PKER_RACCS ( 8, 18) = 0.960763E+00 + PKER_RACCS ( 8, 19) = 0.104493E+01 + PKER_RACCS ( 8, 20) = 0.111460E+01 + PKER_RACCS ( 8, 21) = 0.117219E+01 + PKER_RACCS ( 8, 22) = 0.121981E+01 + PKER_RACCS ( 8, 23) = 0.125918E+01 + PKER_RACCS ( 8, 24) = 0.129174E+01 + PKER_RACCS ( 8, 25) = 0.131868E+01 + PKER_RACCS ( 8, 26) = 0.134096E+01 + PKER_RACCS ( 8, 27) = 0.135939E+01 + PKER_RACCS ( 8, 28) = 0.137465E+01 + PKER_RACCS ( 8, 29) = 0.138727E+01 + PKER_RACCS ( 8, 30) = 0.139771E+01 + PKER_RACCS ( 8, 31) = 0.140635E+01 + PKER_RACCS ( 8, 32) = 0.141350E+01 + PKER_RACCS ( 8, 33) = 0.141942E+01 + PKER_RACCS ( 8, 34) = 0.142432E+01 + PKER_RACCS ( 8, 35) = 0.142838E+01 + PKER_RACCS ( 8, 36) = 0.143173E+01 + PKER_RACCS ( 8, 37) = 0.143451E+01 + PKER_RACCS ( 8, 38) = 0.143681E+01 + PKER_RACCS ( 8, 39) = 0.143871E+01 + PKER_RACCS ( 8, 40) = 0.144029E+01 + PKER_RACCS ( 9, 1) = 0.128193E+02 + PKER_RACCS ( 9, 2) = 0.101710E+02 + PKER_RACCS ( 9, 3) = 0.801494E+01 + PKER_RACCS ( 9, 4) = 0.626567E+01 + PKER_RACCS ( 9, 5) = 0.485005E+01 + PKER_RACCS ( 9, 6) = 0.370613E+01 + PKER_RACCS ( 9, 7) = 0.278307E+01 + PKER_RACCS ( 9, 8) = 0.204116E+01 + PKER_RACCS ( 9, 9) = 0.145223E+01 + PKER_RACCS ( 9, 10) = 0.999910E+00 + PKER_RACCS ( 9, 11) = 0.678225E+00 + PKER_RACCS ( 9, 12) = 0.485619E+00 + PKER_RACCS ( 9, 13) = 0.415703E+00 + PKER_RACCS ( 9, 14) = 0.445551E+00 + PKER_RACCS ( 9, 15) = 0.538377E+00 + PKER_RACCS ( 9, 16) = 0.655431E+00 + PKER_RACCS ( 9, 17) = 0.769934E+00 + PKER_RACCS ( 9, 18) = 0.870332E+00 + PKER_RACCS ( 9, 19) = 0.954640E+00 + PKER_RACCS ( 9, 20) = 0.102452E+01 + PKER_RACCS ( 9, 21) = 0.108227E+01 + PKER_RACCS ( 9, 22) = 0.113001E+01 + PKER_RACCS ( 9, 23) = 0.116947E+01 + PKER_RACCS ( 9, 24) = 0.120209E+01 + PKER_RACCS ( 9, 25) = 0.122908E+01 + PKER_RACCS ( 9, 26) = 0.125140E+01 + PKER_RACCS ( 9, 27) = 0.126986E+01 + PKER_RACCS ( 9, 28) = 0.128513E+01 + PKER_RACCS ( 9, 29) = 0.129777E+01 + PKER_RACCS ( 9, 30) = 0.130823E+01 + PKER_RACCS ( 9, 31) = 0.131688E+01 + PKER_RACCS ( 9, 32) = 0.132404E+01 + PKER_RACCS ( 9, 33) = 0.132996E+01 + PKER_RACCS ( 9, 34) = 0.133487E+01 + PKER_RACCS ( 9, 35) = 0.133892E+01 + PKER_RACCS ( 9, 36) = 0.134228E+01 + PKER_RACCS ( 9, 37) = 0.134506E+01 + PKER_RACCS ( 9, 38) = 0.134736E+01 + PKER_RACCS ( 9, 39) = 0.134927E+01 + PKER_RACCS ( 9, 40) = 0.135084E+01 + PKER_RACCS ( 10, 1) = 0.131653E+02 + PKER_RACCS ( 10, 2) = 0.104811E+02 + PKER_RACCS ( 10, 3) = 0.828636E+01 + PKER_RACCS ( 10, 4) = 0.649911E+01 + PKER_RACCS ( 10, 5) = 0.504891E+01 + PKER_RACCS ( 10, 6) = 0.387538E+01 + PKER_RACCS ( 10, 7) = 0.292777E+01 + PKER_RACCS ( 10, 8) = 0.216507E+01 + PKER_RACCS ( 10, 9) = 0.155660E+01 + PKER_RACCS ( 10, 10) = 0.108253E+01 + PKER_RACCS ( 10, 11) = 0.733699E+00 + PKER_RACCS ( 10, 12) = 0.508107E+00 + PKER_RACCS ( 10, 13) = 0.401864E+00 + PKER_RACCS ( 10, 14) = 0.399605E+00 + PKER_RACCS ( 10, 15) = 0.470066E+00 + PKER_RACCS ( 10, 16) = 0.575534E+00 + PKER_RACCS ( 10, 17) = 0.685829E+00 + PKER_RACCS ( 10, 18) = 0.785326E+00 + PKER_RACCS ( 10, 19) = 0.869715E+00 + PKER_RACCS ( 10, 20) = 0.939821E+00 + PKER_RACCS ( 10, 21) = 0.997773E+00 + PKER_RACCS ( 10, 22) = 0.104565E+01 + PKER_RACCS ( 10, 23) = 0.108522E+01 + PKER_RACCS ( 10, 24) = 0.111793E+01 + PKER_RACCS ( 10, 25) = 0.114497E+01 + PKER_RACCS ( 10, 26) = 0.116733E+01 + PKER_RACCS ( 10, 27) = 0.118583E+01 + PKER_RACCS ( 10, 28) = 0.120113E+01 + PKER_RACCS ( 10, 29) = 0.121379E+01 + PKER_RACCS ( 10, 30) = 0.122426E+01 + PKER_RACCS ( 10, 31) = 0.123292E+01 + PKER_RACCS ( 10, 32) = 0.124009E+01 + PKER_RACCS ( 10, 33) = 0.124602E+01 + PKER_RACCS ( 10, 34) = 0.125093E+01 + PKER_RACCS ( 10, 35) = 0.125500E+01 + PKER_RACCS ( 10, 36) = 0.125836E+01 + PKER_RACCS ( 10, 37) = 0.126114E+01 + PKER_RACCS ( 10, 38) = 0.126344E+01 + PKER_RACCS ( 10, 39) = 0.126535E+01 + PKER_RACCS ( 10, 40) = 0.126692E+01 + PKER_RACCS ( 11, 1) = 0.134866E+02 + PKER_RACCS ( 11, 2) = 0.107778E+02 + PKER_RACCS ( 11, 3) = 0.855355E+01 + PKER_RACCS ( 11, 4) = 0.673440E+01 + PKER_RACCS ( 11, 5) = 0.525269E+01 + PKER_RACCS ( 11, 6) = 0.405032E+01 + PKER_RACCS ( 11, 7) = 0.307764E+01 + PKER_RACCS ( 11, 8) = 0.229345E+01 + PKER_RACCS ( 11, 9) = 0.166544E+01 + PKER_RACCS ( 11, 10) = 0.117103E+01 + PKER_RACCS ( 11, 11) = 0.797857E+00 + PKER_RACCS ( 11, 12) = 0.541886E+00 + PKER_RACCS ( 11, 13) = 0.401262E+00 + PKER_RACCS ( 11, 14) = 0.366324E+00 + PKER_RACCS ( 11, 15) = 0.411835E+00 + PKER_RACCS ( 11, 16) = 0.503075E+00 + PKER_RACCS ( 11, 17) = 0.607497E+00 + PKER_RACCS ( 11, 18) = 0.705455E+00 + PKER_RACCS ( 11, 19) = 0.789792E+00 + PKER_RACCS ( 11, 20) = 0.860149E+00 + PKER_RACCS ( 11, 21) = 0.918336E+00 + PKER_RACCS ( 11, 22) = 0.966393E+00 + PKER_RACCS ( 11, 23) = 0.100609E+01 + PKER_RACCS ( 11, 24) = 0.103890E+01 + PKER_RACCS ( 11, 25) = 0.106601E+01 + PKER_RACCS ( 11, 26) = 0.108843E+01 + PKER_RACCS ( 11, 27) = 0.110696E+01 + PKER_RACCS ( 11, 28) = 0.112229E+01 + PKER_RACCS ( 11, 29) = 0.113498E+01 + PKER_RACCS ( 11, 30) = 0.114547E+01 + PKER_RACCS ( 11, 31) = 0.115414E+01 + PKER_RACCS ( 11, 32) = 0.116132E+01 + PKER_RACCS ( 11, 33) = 0.116726E+01 + PKER_RACCS ( 11, 34) = 0.117218E+01 + PKER_RACCS ( 11, 35) = 0.117625E+01 + PKER_RACCS ( 11, 36) = 0.117961E+01 + PKER_RACCS ( 11, 37) = 0.118240E+01 + PKER_RACCS ( 11, 38) = 0.118470E+01 + PKER_RACCS ( 11, 39) = 0.118661E+01 + PKER_RACCS ( 11, 40) = 0.118819E+01 + PKER_RACCS ( 12, 1) = 0.137765E+02 + PKER_RACCS ( 12, 2) = 0.110532E+02 + PKER_RACCS ( 12, 3) = 0.880887E+01 + PKER_RACCS ( 12, 4) = 0.696546E+01 + PKER_RACCS ( 12, 5) = 0.545739E+01 + PKER_RACCS ( 12, 6) = 0.422884E+01 + PKER_RACCS ( 12, 7) = 0.323193E+01 + PKER_RACCS ( 12, 8) = 0.242617E+01 + PKER_RACCS ( 12, 9) = 0.177863E+01 + PKER_RACCS ( 12, 10) = 0.126480E+01 + PKER_RACCS ( 12, 11) = 0.869502E+00 + PKER_RACCS ( 12, 12) = 0.586444E+00 + PKER_RACCS ( 12, 13) = 0.413638E+00 + PKER_RACCS ( 12, 14) = 0.345906E+00 + PKER_RACCS ( 12, 15) = 0.364471E+00 + PKER_RACCS ( 12, 16) = 0.438529E+00 + PKER_RACCS ( 12, 17) = 0.535017E+00 + PKER_RACCS ( 12, 18) = 0.630497E+00 + PKER_RACCS ( 12, 19) = 0.714544E+00 + PKER_RACCS ( 12, 20) = 0.785149E+00 + PKER_RACCS ( 12, 21) = 0.843614E+00 + PKER_RACCS ( 12, 22) = 0.891886E+00 + PKER_RACCS ( 12, 23) = 0.931743E+00 + PKER_RACCS ( 12, 24) = 0.964664E+00 + PKER_RACCS ( 12, 25) = 0.991866E+00 + PKER_RACCS ( 12, 26) = 0.101435E+01 + PKER_RACCS ( 12, 27) = 0.103293E+01 + PKER_RACCS ( 12, 28) = 0.104830E+01 + PKER_RACCS ( 12, 29) = 0.106101E+01 + PKER_RACCS ( 12, 30) = 0.107152E+01 + PKER_RACCS ( 12, 31) = 0.108022E+01 + PKER_RACCS ( 12, 32) = 0.108741E+01 + PKER_RACCS ( 12, 33) = 0.109336E+01 + PKER_RACCS ( 12, 34) = 0.109828E+01 + PKER_RACCS ( 12, 35) = 0.110236E+01 + PKER_RACCS ( 12, 36) = 0.110573E+01 + PKER_RACCS ( 12, 37) = 0.110852E+01 + PKER_RACCS ( 12, 38) = 0.111082E+01 + PKER_RACCS ( 12, 39) = 0.111273E+01 + PKER_RACCS ( 12, 40) = 0.111431E+01 + PKER_RACCS ( 13, 1) = 0.140319E+02 + PKER_RACCS ( 13, 2) = 0.113018E+02 + PKER_RACCS ( 13, 3) = 0.904571E+01 + PKER_RACCS ( 13, 4) = 0.718591E+01 + PKER_RACCS ( 13, 5) = 0.565791E+01 + PKER_RACCS ( 13, 6) = 0.440756E+01 + PKER_RACCS ( 13, 7) = 0.338881E+01 + PKER_RACCS ( 13, 8) = 0.256245E+01 + PKER_RACCS ( 13, 9) = 0.189581E+01 + PKER_RACCS ( 13, 10) = 0.136334E+01 + PKER_RACCS ( 13, 11) = 0.947657E+00 + PKER_RACCS ( 13, 12) = 0.639932E+00 + PKER_RACCS ( 13, 13) = 0.437803E+00 + PKER_RACCS ( 13, 14) = 0.338008E+00 + PKER_RACCS ( 13, 15) = 0.328139E+00 + PKER_RACCS ( 13, 16) = 0.382351E+00 + PKER_RACCS ( 13, 17) = 0.468516E+00 + PKER_RACCS ( 13, 18) = 0.560309E+00 + PKER_RACCS ( 13, 19) = 0.643677E+00 + PKER_RACCS ( 13, 20) = 0.714489E+00 + PKER_RACCS ( 13, 21) = 0.773275E+00 + PKER_RACCS ( 13, 22) = 0.821808E+00 + PKER_RACCS ( 13, 23) = 0.861858E+00 + PKER_RACCS ( 13, 24) = 0.894921E+00 + PKER_RACCS ( 13, 25) = 0.922228E+00 + PKER_RACCS ( 13, 26) = 0.944789E+00 + PKER_RACCS ( 13, 27) = 0.963435E+00 + PKER_RACCS ( 13, 28) = 0.978847E+00 + PKER_RACCS ( 13, 29) = 0.991591E+00 + PKER_RACCS ( 13, 30) = 0.100213E+01 + PKER_RACCS ( 13, 31) = 0.101084E+01 + PKER_RACCS ( 13, 32) = 0.101805E+01 + PKER_RACCS ( 13, 33) = 0.102401E+01 + PKER_RACCS ( 13, 34) = 0.102895E+01 + PKER_RACCS ( 13, 35) = 0.103303E+01 + PKER_RACCS ( 13, 36) = 0.103640E+01 + PKER_RACCS ( 13, 37) = 0.103920E+01 + PKER_RACCS ( 13, 38) = 0.104151E+01 + PKER_RACCS ( 13, 39) = 0.104342E+01 + PKER_RACCS ( 13, 40) = 0.104500E+01 + PKER_RACCS ( 14, 1) = 0.142526E+02 + PKER_RACCS ( 14, 2) = 0.115209E+02 + PKER_RACCS ( 14, 3) = 0.925951E+01 + PKER_RACCS ( 14, 4) = 0.739026E+01 + PKER_RACCS ( 14, 5) = 0.584892E+01 + PKER_RACCS ( 14, 6) = 0.458219E+01 + PKER_RACCS ( 14, 7) = 0.354538E+01 + PKER_RACCS ( 14, 8) = 0.270063E+01 + PKER_RACCS ( 14, 9) = 0.201611E+01 + PKER_RACCS ( 14, 10) = 0.146603E+01 + PKER_RACCS ( 14, 11) = 0.103157E+01 + PKER_RACCS ( 14, 12) = 0.701686E+00 + PKER_RACCS ( 14, 13) = 0.472410E+00 + PKER_RACCS ( 14, 14) = 0.342083E+00 + PKER_RACCS ( 14, 15) = 0.303081E+00 + PKER_RACCS ( 14, 16) = 0.334956E+00 + PKER_RACCS ( 14, 17) = 0.408312E+00 + PKER_RACCS ( 14, 18) = 0.494848E+00 + PKER_RACCS ( 14, 19) = 0.576946E+00 + PKER_RACCS ( 14, 20) = 0.647859E+00 + PKER_RACCS ( 14, 21) = 0.707002E+00 + PKER_RACCS ( 14, 22) = 0.755849E+00 + PKER_RACCS ( 14, 23) = 0.796134E+00 + PKER_RACCS ( 14, 24) = 0.829370E+00 + PKER_RACCS ( 14, 25) = 0.856804E+00 + PKER_RACCS ( 14, 26) = 0.879461E+00 + PKER_RACCS ( 14, 27) = 0.898177E+00 + PKER_RACCS ( 14, 28) = 0.913644E+00 + PKER_RACCS ( 14, 29) = 0.926428E+00 + PKER_RACCS ( 14, 30) = 0.936997E+00 + PKER_RACCS ( 14, 31) = 0.945736E+00 + PKER_RACCS ( 14, 32) = 0.952963E+00 + PKER_RACCS ( 14, 33) = 0.958940E+00 + PKER_RACCS ( 14, 34) = 0.963884E+00 + PKER_RACCS ( 14, 35) = 0.967973E+00 + PKER_RACCS ( 14, 36) = 0.971356E+00 + PKER_RACCS ( 14, 37) = 0.974154E+00 + PKER_RACCS ( 14, 38) = 0.976470E+00 + PKER_RACCS ( 14, 39) = 0.978385E+00 + PKER_RACCS ( 14, 40) = 0.979971E+00 + PKER_RACCS ( 15, 1) = 0.144408E+02 + PKER_RACCS ( 15, 2) = 0.117106E+02 + PKER_RACCS ( 15, 3) = 0.944817E+01 + PKER_RACCS ( 15, 4) = 0.757478E+01 + PKER_RACCS ( 15, 5) = 0.602588E+01 + PKER_RACCS ( 15, 6) = 0.474829E+01 + PKER_RACCS ( 15, 7) = 0.369801E+01 + PKER_RACCS ( 15, 8) = 0.283819E+01 + PKER_RACCS ( 15, 9) = 0.213794E+01 + PKER_RACCS ( 15, 10) = 0.157180E+01 + PKER_RACCS ( 15, 11) = 0.112020E+01 + PKER_RACCS ( 15, 12) = 0.770447E+00 + PKER_RACCS ( 15, 13) = 0.516893E+00 + PKER_RACCS ( 15, 14) = 0.357861E+00 + PKER_RACCS ( 15, 15) = 0.289607E+00 + PKER_RACCS ( 15, 16) = 0.297216E+00 + PKER_RACCS ( 15, 17) = 0.354956E+00 + PKER_RACCS ( 15, 18) = 0.434258E+00 + PKER_RACCS ( 15, 19) = 0.514182E+00 + PKER_RACCS ( 15, 20) = 0.584974E+00 + PKER_RACCS ( 15, 21) = 0.644491E+00 + PKER_RACCS ( 15, 22) = 0.693710E+00 + PKER_RACCS ( 15, 23) = 0.734280E+00 + PKER_RACCS ( 15, 24) = 0.767726E+00 + PKER_RACCS ( 15, 25) = 0.795315E+00 + PKER_RACCS ( 15, 26) = 0.818087E+00 + PKER_RACCS ( 15, 27) = 0.836890E+00 + PKER_RACCS ( 15, 28) = 0.852422E+00 + PKER_RACCS ( 15, 29) = 0.865255E+00 + PKER_RACCS ( 15, 30) = 0.875862E+00 + PKER_RACCS ( 15, 31) = 0.884630E+00 + PKER_RACCS ( 15, 32) = 0.891879E+00 + PKER_RACCS ( 15, 33) = 0.897873E+00 + PKER_RACCS ( 15, 34) = 0.902830E+00 + PKER_RACCS ( 15, 35) = 0.906929E+00 + PKER_RACCS ( 15, 36) = 0.910320E+00 + PKER_RACCS ( 15, 37) = 0.913125E+00 + PKER_RACCS ( 15, 38) = 0.915446E+00 + PKER_RACCS ( 15, 39) = 0.917365E+00 + PKER_RACCS ( 15, 40) = 0.918953E+00 + PKER_RACCS ( 16, 1) = 0.146000E+02 + PKER_RACCS ( 16, 2) = 0.118728E+02 + PKER_RACCS ( 16, 3) = 0.961176E+01 + PKER_RACCS ( 16, 4) = 0.773776E+01 + PKER_RACCS ( 16, 5) = 0.618568E+01 + PKER_RACCS ( 16, 6) = 0.490207E+01 + PKER_RACCS ( 16, 7) = 0.384296E+01 + PKER_RACCS ( 16, 8) = 0.297203E+01 + PKER_RACCS ( 16, 9) = 0.225904E+01 + PKER_RACCS ( 16, 10) = 0.167906E+01 + PKER_RACCS ( 16, 11) = 0.121230E+01 + PKER_RACCS ( 16, 12) = 0.844921E+00 + PKER_RACCS ( 16, 13) = 0.569587E+00 + PKER_RACCS ( 16, 14) = 0.384481E+00 + PKER_RACCS ( 16, 15) = 0.287547E+00 + PKER_RACCS ( 16, 16) = 0.269381E+00 + PKER_RACCS ( 16, 17) = 0.308942E+00 + PKER_RACCS ( 16, 18) = 0.378718E+00 + PKER_RACCS ( 16, 19) = 0.455285E+00 + PKER_RACCS ( 16, 20) = 0.525584E+00 + PKER_RACCS ( 16, 21) = 0.585450E+00 + PKER_RACCS ( 16, 22) = 0.635102E+00 + PKER_RACCS ( 16, 23) = 0.676017E+00 + PKER_RACCS ( 16, 24) = 0.709718E+00 + PKER_RACCS ( 16, 25) = 0.737496E+00 + PKER_RACCS ( 16, 26) = 0.760407E+00 + PKER_RACCS ( 16, 27) = 0.779315E+00 + PKER_RACCS ( 16, 28) = 0.794925E+00 + PKER_RACCS ( 16, 29) = 0.807818E+00 + PKER_RACCS ( 16, 30) = 0.818470E+00 + PKER_RACCS ( 16, 31) = 0.827272E+00 + PKER_RACCS ( 16, 32) = 0.834548E+00 + PKER_RACCS ( 16, 33) = 0.840562E+00 + PKER_RACCS ( 16, 34) = 0.845535E+00 + PKER_RACCS ( 16, 35) = 0.849647E+00 + PKER_RACCS ( 16, 36) = 0.853048E+00 + PKER_RACCS ( 16, 37) = 0.855860E+00 + PKER_RACCS ( 16, 38) = 0.858187E+00 + PKER_RACCS ( 16, 39) = 0.860111E+00 + PKER_RACCS ( 16, 40) = 0.861703E+00 + PKER_RACCS ( 17, 1) = 0.147341E+02 + PKER_RACCS ( 17, 2) = 0.120103E+02 + PKER_RACCS ( 17, 3) = 0.975189E+01 + PKER_RACCS ( 17, 4) = 0.787932E+01 + PKER_RACCS ( 17, 5) = 0.632699E+01 + PKER_RACCS ( 17, 6) = 0.504099E+01 + PKER_RACCS ( 17, 7) = 0.397709E+01 + PKER_RACCS ( 17, 8) = 0.309897E+01 + PKER_RACCS ( 17, 9) = 0.237672E+01 + PKER_RACCS ( 17, 10) = 0.178573E+01 + PKER_RACCS ( 17, 11) = 0.130626E+01 + PKER_RACCS ( 17, 12) = 0.923760E+00 + PKER_RACCS ( 17, 13) = 0.629526E+00 + PKER_RACCS ( 17, 14) = 0.420645E+00 + PKER_RACCS ( 17, 15) = 0.296483E+00 + PKER_RACCS ( 17, 16) = 0.251869E+00 + PKER_RACCS ( 17, 17) = 0.270840E+00 + PKER_RACCS ( 17, 18) = 0.328636E+00 + PKER_RACCS ( 17, 19) = 0.400275E+00 + PKER_RACCS ( 17, 20) = 0.469486E+00 + PKER_RACCS ( 17, 21) = 0.529608E+00 + PKER_RACCS ( 17, 22) = 0.579747E+00 + PKER_RACCS ( 17, 23) = 0.621076E+00 + PKER_RACCS ( 17, 24) = 0.655088E+00 + PKER_RACCS ( 17, 25) = 0.683094E+00 + PKER_RACCS ( 17, 26) = 0.706174E+00 + PKER_RACCS ( 17, 27) = 0.725208E+00 + PKER_RACCS ( 17, 28) = 0.740913E+00 + PKER_RACCS ( 17, 29) = 0.753877E+00 + PKER_RACCS ( 17, 30) = 0.764583E+00 + PKER_RACCS ( 17, 31) = 0.773427E+00 + PKER_RACCS ( 17, 32) = 0.780735E+00 + PKER_RACCS ( 17, 33) = 0.786774E+00 + PKER_RACCS ( 17, 34) = 0.791766E+00 + PKER_RACCS ( 17, 35) = 0.795893E+00 + PKER_RACCS ( 17, 36) = 0.799305E+00 + PKER_RACCS ( 17, 37) = 0.802126E+00 + PKER_RACCS ( 17, 38) = 0.804459E+00 + PKER_RACCS ( 17, 39) = 0.806389E+00 + PKER_RACCS ( 17, 40) = 0.807985E+00 + PKER_RACCS ( 18, 1) = 0.148471E+02 + PKER_RACCS ( 18, 2) = 0.121265E+02 + PKER_RACCS ( 18, 3) = 0.987110E+01 + PKER_RACCS ( 18, 4) = 0.800089E+01 + PKER_RACCS ( 18, 5) = 0.644994E+01 + PKER_RACCS ( 18, 6) = 0.516395E+01 + PKER_RACCS ( 18, 7) = 0.409829E+01 + PKER_RACCS ( 18, 8) = 0.321639E+01 + PKER_RACCS ( 18, 9) = 0.248825E+01 + PKER_RACCS ( 18, 10) = 0.188937E+01 + PKER_RACCS ( 18, 11) = 0.140001E+01 + PKER_RACCS ( 18, 12) = 0.100512E+01 + PKER_RACCS ( 18, 13) = 0.694965E+00 + PKER_RACCS ( 18, 14) = 0.465425E+00 + PKER_RACCS ( 18, 15) = 0.316022E+00 + PKER_RACCS ( 18, 16) = 0.245025E+00 + PKER_RACCS ( 18, 17) = 0.241586E+00 + PKER_RACCS ( 18, 18) = 0.284650E+00 + PKER_RACCS ( 18, 19) = 0.349371E+00 + PKER_RACCS ( 18, 20) = 0.416569E+00 + PKER_RACCS ( 18, 21) = 0.476716E+00 + PKER_RACCS ( 18, 22) = 0.527374E+00 + PKER_RACCS ( 18, 23) = 0.569195E+00 + PKER_RACCS ( 18, 24) = 0.603581E+00 + PKER_RACCS ( 18, 25) = 0.631865E+00 + PKER_RACCS ( 18, 26) = 0.655150E+00 + PKER_RACCS ( 18, 27) = 0.674336E+00 + PKER_RACCS ( 18, 28) = 0.690155E+00 + PKER_RACCS ( 18, 29) = 0.703206E+00 + PKER_RACCS ( 18, 30) = 0.713977E+00 + PKER_RACCS ( 18, 31) = 0.722871E+00 + PKER_RACCS ( 18, 32) = 0.730217E+00 + PKER_RACCS ( 18, 33) = 0.736286E+00 + PKER_RACCS ( 18, 34) = 0.741300E+00 + PKER_RACCS ( 18, 35) = 0.745445E+00 + PKER_RACCS ( 18, 36) = 0.748871E+00 + PKER_RACCS ( 18, 37) = 0.751703E+00 + PKER_RACCS ( 18, 38) = 0.754044E+00 + PKER_RACCS ( 18, 39) = 0.755981E+00 + PKER_RACCS ( 18, 40) = 0.757582E+00 + PKER_RACCS ( 19, 1) = 0.149424E+02 + PKER_RACCS ( 19, 2) = 0.122248E+02 + PKER_RACCS ( 19, 3) = 0.997223E+01 + PKER_RACCS ( 19, 4) = 0.810461E+01 + PKER_RACCS ( 19, 5) = 0.655579E+01 + PKER_RACCS ( 19, 6) = 0.527114E+01 + PKER_RACCS ( 19, 7) = 0.420569E+01 + PKER_RACCS ( 19, 8) = 0.332252E+01 + PKER_RACCS ( 19, 9) = 0.259139E+01 + PKER_RACCS ( 19, 10) = 0.198760E+01 + PKER_RACCS ( 19, 11) = 0.149127E+01 + PKER_RACCS ( 19, 12) = 0.108695E+01 + PKER_RACCS ( 19, 13) = 0.763957E+00 + PKER_RACCS ( 19, 14) = 0.516893E+00 + PKER_RACCS ( 19, 15) = 0.345184E+00 + PKER_RACCS ( 19, 16) = 0.248721E+00 + PKER_RACCS ( 19, 17) = 0.221527E+00 + PKER_RACCS ( 19, 18) = 0.247368E+00 + PKER_RACCS ( 19, 19) = 0.302857E+00 + PKER_RACCS ( 19, 20) = 0.366792E+00 + PKER_RACCS ( 19, 21) = 0.426569E+00 + PKER_RACCS ( 19, 22) = 0.477725E+00 + PKER_RACCS ( 19, 23) = 0.520116E+00 + PKER_RACCS ( 19, 24) = 0.554955E+00 + PKER_RACCS ( 19, 25) = 0.583575E+00 + PKER_RACCS ( 19, 26) = 0.607108E+00 + PKER_RACCS ( 19, 27) = 0.626479E+00 + PKER_RACCS ( 19, 28) = 0.642436E+00 + PKER_RACCS ( 19, 29) = 0.655590E+00 + PKER_RACCS ( 19, 30) = 0.666441E+00 + PKER_RACCS ( 19, 31) = 0.675394E+00 + PKER_RACCS ( 19, 32) = 0.682786E+00 + PKER_RACCS ( 19, 33) = 0.688890E+00 + PKER_RACCS ( 19, 34) = 0.693932E+00 + PKER_RACCS ( 19, 35) = 0.698097E+00 + PKER_RACCS ( 19, 36) = 0.701540E+00 + PKER_RACCS ( 19, 37) = 0.704385E+00 + PKER_RACCS ( 19, 38) = 0.706736E+00 + PKER_RACCS ( 19, 39) = 0.708680E+00 + PKER_RACCS ( 19, 40) = 0.710287E+00 + PKER_RACCS ( 20, 1) = 0.150233E+02 + PKER_RACCS ( 20, 2) = 0.123081E+02 + PKER_RACCS ( 20, 3) = 0.100581E+02 + PKER_RACCS ( 20, 4) = 0.819292E+01 + PKER_RACCS ( 20, 5) = 0.664638E+01 + PKER_RACCS ( 20, 6) = 0.536365E+01 + PKER_RACCS ( 20, 7) = 0.429950E+01 + PKER_RACCS ( 20, 8) = 0.341669E+01 + PKER_RACCS ( 20, 9) = 0.268467E+01 + PKER_RACCS ( 20, 10) = 0.207848E+01 + PKER_RACCS ( 20, 11) = 0.157790E+01 + PKER_RACCS ( 20, 12) = 0.116706E+01 + PKER_RACCS ( 20, 13) = 0.834456E+00 + PKER_RACCS ( 20, 14) = 0.573438E+00 + PKER_RACCS ( 20, 15) = 0.382407E+00 + PKER_RACCS ( 20, 16) = 0.262345E+00 + PKER_RACCS ( 20, 17) = 0.211120E+00 + PKER_RACCS ( 20, 18) = 0.217516E+00 + PKER_RACCS ( 20, 19) = 0.261278E+00 + PKER_RACCS ( 20, 20) = 0.320279E+00 + PKER_RACCS ( 20, 21) = 0.379014E+00 + PKER_RACCS ( 20, 22) = 0.430562E+00 + PKER_RACCS ( 20, 23) = 0.473590E+00 + PKER_RACCS ( 20, 24) = 0.508970E+00 + PKER_RACCS ( 20, 25) = 0.537995E+00 + PKER_RACCS ( 20, 26) = 0.561829E+00 + PKER_RACCS ( 20, 27) = 0.581423E+00 + PKER_RACCS ( 20, 28) = 0.597547E+00 + PKER_RACCS ( 20, 29) = 0.610827E+00 + PKER_RACCS ( 20, 30) = 0.621772E+00 + PKER_RACCS ( 20, 31) = 0.630798E+00 + PKER_RACCS ( 20, 32) = 0.638244E+00 + PKER_RACCS ( 20, 33) = 0.644390E+00 + PKER_RACCS ( 20, 34) = 0.649465E+00 + PKER_RACCS ( 20, 35) = 0.653656E+00 + PKER_RACCS ( 20, 36) = 0.657117E+00 + PKER_RACCS ( 20, 37) = 0.659978E+00 + PKER_RACCS ( 20, 38) = 0.662341E+00 + PKER_RACCS ( 20, 39) = 0.664294E+00 + PKER_RACCS ( 20, 40) = 0.665909E+00 + PKER_RACCS ( 21, 1) = 0.150922E+02 + PKER_RACCS ( 21, 2) = 0.123791E+02 + PKER_RACCS ( 21, 3) = 0.101311E+02 + PKER_RACCS ( 21, 4) = 0.826818E+01 + PKER_RACCS ( 21, 5) = 0.672379E+01 + PKER_RACCS ( 21, 6) = 0.544309E+01 + PKER_RACCS ( 21, 7) = 0.438067E+01 + PKER_RACCS ( 21, 8) = 0.349910E+01 + PKER_RACCS ( 21, 9) = 0.276755E+01 + PKER_RACCS ( 21, 10) = 0.216074E+01 + PKER_RACCS ( 21, 11) = 0.165815E+01 + PKER_RACCS ( 21, 12) = 0.124340E+01 + PKER_RACCS ( 21, 13) = 0.904204E+00 + PKER_RACCS ( 21, 14) = 0.632746E+00 + PKER_RACCS ( 21, 15) = 0.426104E+00 + PKER_RACCS ( 21, 16) = 0.285124E+00 + PKER_RACCS ( 21, 17) = 0.210547E+00 + PKER_RACCS ( 21, 18) = 0.196012E+00 + PKER_RACCS ( 21, 19) = 0.225390E+00 + PKER_RACCS ( 21, 20) = 0.277352E+00 + PKER_RACCS ( 21, 21) = 0.334022E+00 + PKER_RACCS ( 21, 22) = 0.385682E+00 + PKER_RACCS ( 21, 23) = 0.429377E+00 + PKER_RACCS ( 21, 24) = 0.465390E+00 + PKER_RACCS ( 21, 25) = 0.494904E+00 + PKER_RACCS ( 21, 26) = 0.519101E+00 + PKER_RACCS ( 21, 27) = 0.538964E+00 + PKER_RACCS ( 21, 28) = 0.555290E+00 + PKER_RACCS ( 21, 29) = 0.568721E+00 + PKER_RACCS ( 21, 30) = 0.579780E+00 + PKER_RACCS ( 21, 31) = 0.588892E+00 + PKER_RACCS ( 21, 32) = 0.596405E+00 + PKER_RACCS ( 21, 33) = 0.602602E+00 + PKER_RACCS ( 21, 34) = 0.607715E+00 + PKER_RACCS ( 21, 35) = 0.611936E+00 + PKER_RACCS ( 21, 36) = 0.615421E+00 + PKER_RACCS ( 21, 37) = 0.618300E+00 + PKER_RACCS ( 21, 38) = 0.620677E+00 + PKER_RACCS ( 21, 39) = 0.622642E+00 + PKER_RACCS ( 21, 40) = 0.624265E+00 + PKER_RACCS ( 22, 1) = 0.151514E+02 + PKER_RACCS ( 22, 2) = 0.124399E+02 + PKER_RACCS ( 22, 3) = 0.101937E+02 + PKER_RACCS ( 22, 4) = 0.833253E+01 + PKER_RACCS ( 22, 5) = 0.679003E+01 + PKER_RACCS ( 22, 6) = 0.551121E+01 + PKER_RACCS ( 22, 7) = 0.445059E+01 + PKER_RACCS ( 22, 8) = 0.357060E+01 + PKER_RACCS ( 22, 9) = 0.284022E+01 + PKER_RACCS ( 22, 10) = 0.223394E+01 + PKER_RACCS ( 22, 11) = 0.173091E+01 + PKER_RACCS ( 22, 12) = 0.131432E+01 + PKER_RACCS ( 22, 13) = 0.971179E+00 + PKER_RACCS ( 22, 14) = 0.692512E+00 + PKER_RACCS ( 22, 15) = 0.473921E+00 + PKER_RACCS ( 22, 16) = 0.315613E+00 + PKER_RACCS ( 22, 17) = 0.219438E+00 + PKER_RACCS ( 22, 18) = 0.183228E+00 + PKER_RACCS ( 22, 19) = 0.195928E+00 + PKER_RACCS ( 22, 20) = 0.238467E+00 + PKER_RACCS ( 22, 21) = 0.291650E+00 + PKER_RACCS ( 22, 22) = 0.342933E+00 + PKER_RACCS ( 22, 23) = 0.387253E+00 + PKER_RACCS ( 22, 24) = 0.423987E+00 + PKER_RACCS ( 22, 25) = 0.454083E+00 + PKER_RACCS ( 22, 26) = 0.478717E+00 + PKER_RACCS ( 22, 27) = 0.498906E+00 + PKER_RACCS ( 22, 28) = 0.515474E+00 + PKER_RACCS ( 22, 29) = 0.529087E+00 + PKER_RACCS ( 22, 30) = 0.540283E+00 + PKER_RACCS ( 22, 31) = 0.549500E+00 + PKER_RACCS ( 22, 32) = 0.557092E+00 + PKER_RACCS ( 22, 33) = 0.563350E+00 + PKER_RACCS ( 22, 34) = 0.568510E+00 + PKER_RACCS ( 22, 35) = 0.572767E+00 + PKER_RACCS ( 22, 36) = 0.576280E+00 + PKER_RACCS ( 22, 37) = 0.579180E+00 + PKER_RACCS ( 22, 38) = 0.581575E+00 + PKER_RACCS ( 22, 39) = 0.583552E+00 + PKER_RACCS ( 22, 40) = 0.585186E+00 + PKER_RACCS ( 23, 1) = 0.152025E+02 + PKER_RACCS ( 23, 2) = 0.124923E+02 + PKER_RACCS ( 23, 3) = 0.102475E+02 + PKER_RACCS ( 23, 4) = 0.838786E+01 + PKER_RACCS ( 23, 5) = 0.684693E+01 + PKER_RACCS ( 23, 6) = 0.556974E+01 + PKER_RACCS ( 23, 7) = 0.451078E+01 + PKER_RACCS ( 23, 8) = 0.363239E+01 + PKER_RACCS ( 23, 9) = 0.290344E+01 + PKER_RACCS ( 23, 10) = 0.229827E+01 + PKER_RACCS ( 23, 11) = 0.179578E+01 + PKER_RACCS ( 23, 12) = 0.137880E+01 + PKER_RACCS ( 23, 13) = 0.103376E+01 + PKER_RACCS ( 23, 14) = 0.750698E+00 + PKER_RACCS ( 23, 15) = 0.523775E+00 + PKER_RACCS ( 23, 16) = 0.351748E+00 + PKER_RACCS ( 23, 17) = 0.236670E+00 + PKER_RACCS ( 23, 18) = 0.179378E+00 + PKER_RACCS ( 23, 19) = 0.173687E+00 + PKER_RACCS ( 23, 20) = 0.204334E+00 + PKER_RACCS ( 23, 21) = 0.252182E+00 + PKER_RACCS ( 23, 22) = 0.302250E+00 + PKER_RACCS ( 23, 23) = 0.347024E+00 + PKER_RACCS ( 23, 24) = 0.384540E+00 + PKER_RACCS ( 23, 25) = 0.415319E+00 + PKER_RACCS ( 23, 26) = 0.440475E+00 + PKER_RACCS ( 23, 27) = 0.461054E+00 + PKER_RACCS ( 23, 28) = 0.477914E+00 + PKER_RACCS ( 23, 29) = 0.491746E+00 + PKER_RACCS ( 23, 30) = 0.503108E+00 + PKER_RACCS ( 23, 31) = 0.512450E+00 + PKER_RACCS ( 23, 32) = 0.520137E+00 + PKER_RACCS ( 23, 33) = 0.526468E+00 + PKER_RACCS ( 23, 34) = 0.531684E+00 + PKER_RACCS ( 23, 35) = 0.535984E+00 + PKER_RACCS ( 23, 36) = 0.539531E+00 + PKER_RACCS ( 23, 37) = 0.542457E+00 + PKER_RACCS ( 23, 38) = 0.544872E+00 + PKER_RACCS ( 23, 39) = 0.546865E+00 + PKER_RACCS ( 23, 40) = 0.548511E+00 + PKER_RACCS ( 24, 1) = 0.152471E+02 + PKER_RACCS ( 24, 2) = 0.125379E+02 + PKER_RACCS ( 24, 3) = 0.102942E+02 + PKER_RACCS ( 24, 4) = 0.843571E+01 + PKER_RACCS ( 24, 5) = 0.689606E+01 + PKER_RACCS ( 24, 6) = 0.562023E+01 + PKER_RACCS ( 24, 7) = 0.456270E+01 + PKER_RACCS ( 24, 8) = 0.368577E+01 + PKER_RACCS ( 24, 9) = 0.295826E+01 + PKER_RACCS ( 24, 10) = 0.235439E+01 + PKER_RACCS ( 24, 11) = 0.185292E+01 + PKER_RACCS ( 24, 12) = 0.143643E+01 + PKER_RACCS ( 24, 13) = 0.109091E+01 + PKER_RACCS ( 24, 14) = 0.805605E+00 + PKER_RACCS ( 24, 15) = 0.573417E+00 + PKER_RACCS ( 24, 16) = 0.391471E+00 + PKER_RACCS ( 24, 17) = 0.260876E+00 + PKER_RACCS ( 24, 18) = 0.184180E+00 + PKER_RACCS ( 24, 19) = 0.159396E+00 + PKER_RACCS ( 24, 20) = 0.175814E+00 + PKER_RACCS ( 24, 21) = 0.216094E+00 + PKER_RACCS ( 24, 22) = 0.263726E+00 + PKER_RACCS ( 24, 23) = 0.308551E+00 + PKER_RACCS ( 24, 24) = 0.346845E+00 + PKER_RACCS ( 24, 25) = 0.378402E+00 + PKER_RACCS ( 24, 26) = 0.404175E+00 + PKER_RACCS ( 24, 27) = 0.425220E+00 + PKER_RACCS ( 24, 28) = 0.442431E+00 + PKER_RACCS ( 24, 29) = 0.456527E+00 + PKER_RACCS ( 24, 30) = 0.468088E+00 + PKER_RACCS ( 24, 31) = 0.477580E+00 + PKER_RACCS ( 24, 32) = 0.485382E+00 + PKER_RACCS ( 24, 33) = 0.491800E+00 + PKER_RACCS ( 24, 34) = 0.497083E+00 + PKER_RACCS ( 24, 35) = 0.501435E+00 + PKER_RACCS ( 24, 36) = 0.505022E+00 + PKER_RACCS ( 24, 37) = 0.507979E+00 + PKER_RACCS ( 24, 38) = 0.510418E+00 + PKER_RACCS ( 24, 39) = 0.512430E+00 + PKER_RACCS ( 24, 40) = 0.514090E+00 + PKER_RACCS ( 25, 1) = 0.152861E+02 + PKER_RACCS ( 25, 2) = 0.125778E+02 + PKER_RACCS ( 25, 3) = 0.103349E+02 + PKER_RACCS ( 25, 4) = 0.847739E+01 + PKER_RACCS ( 25, 5) = 0.693876E+01 + PKER_RACCS ( 25, 6) = 0.566404E+01 + PKER_RACCS ( 25, 7) = 0.460768E+01 + PKER_RACCS ( 25, 8) = 0.373200E+01 + PKER_RACCS ( 25, 9) = 0.300578E+01 + PKER_RACCS ( 25, 10) = 0.240320E+01 + PKER_RACCS ( 25, 11) = 0.190291E+01 + PKER_RACCS ( 25, 12) = 0.148735E+01 + PKER_RACCS ( 25, 13) = 0.114219E+01 + PKER_RACCS ( 25, 14) = 0.856136E+00 + PKER_RACCS ( 25, 15) = 0.621029E+00 + PKER_RACCS ( 25, 16) = 0.432440E+00 + PKER_RACCS ( 25, 17) = 0.290169E+00 + PKER_RACCS ( 25, 18) = 0.196768E+00 + PKER_RACCS ( 25, 19) = 0.153201E+00 + PKER_RACCS ( 25, 20) = 0.153672E+00 + PKER_RACCS ( 25, 21) = 0.184048E+00 + PKER_RACCS ( 25, 22) = 0.227585E+00 + PKER_RACCS ( 25, 23) = 0.271783E+00 + PKER_RACCS ( 25, 24) = 0.310728E+00 + PKER_RACCS ( 25, 25) = 0.343135E+00 + PKER_RACCS ( 25, 26) = 0.369625E+00 + PKER_RACCS ( 25, 27) = 0.391222E+00 + PKER_RACCS ( 25, 28) = 0.408850E+00 + PKER_RACCS ( 25, 29) = 0.423262E+00 + PKER_RACCS ( 25, 30) = 0.435061E+00 + PKER_RACCS ( 25, 31) = 0.444734E+00 + PKER_RACCS ( 25, 32) = 0.452673E+00 + PKER_RACCS ( 25, 33) = 0.459196E+00 + PKER_RACCS ( 25, 34) = 0.464560E+00 + PKER_RACCS ( 25, 35) = 0.468974E+00 + PKER_RACCS ( 25, 36) = 0.472608E+00 + PKER_RACCS ( 25, 37) = 0.475602E+00 + PKER_RACCS ( 25, 38) = 0.478070E+00 + PKER_RACCS ( 25, 39) = 0.480104E+00 + PKER_RACCS ( 25, 40) = 0.481782E+00 + PKER_RACCS ( 26, 1) = 0.153206E+02 + PKER_RACCS ( 26, 2) = 0.126129E+02 + PKER_RACCS ( 26, 3) = 0.103707E+02 + PKER_RACCS ( 26, 4) = 0.851394E+01 + PKER_RACCS ( 26, 5) = 0.697612E+01 + PKER_RACCS ( 26, 6) = 0.570228E+01 + PKER_RACCS ( 26, 7) = 0.464688E+01 + PKER_RACCS ( 26, 8) = 0.377223E+01 + PKER_RACCS ( 26, 9) = 0.304711E+01 + PKER_RACCS ( 26, 10) = 0.244567E+01 + PKER_RACCS ( 26, 11) = 0.194653E+01 + PKER_RACCS ( 26, 12) = 0.153202E+01 + PKER_RACCS ( 26, 13) = 0.118766E+01 + PKER_RACCS ( 26, 14) = 0.901746E+00 + PKER_RACCS ( 26, 15) = 0.665390E+00 + PKER_RACCS ( 26, 16) = 0.472866E+00 + PKER_RACCS ( 26, 17) = 0.322299E+00 + PKER_RACCS ( 26, 18) = 0.215438E+00 + PKER_RACCS ( 26, 19) = 0.154776E+00 + PKER_RACCS ( 26, 20) = 0.138541E+00 + PKER_RACCS ( 26, 21) = 0.156867E+00 + PKER_RACCS ( 26, 22) = 0.194320E+00 + PKER_RACCS ( 26, 23) = 0.236800E+00 + PKER_RACCS ( 26, 24) = 0.276076E+00 + PKER_RACCS ( 26, 25) = 0.309341E+00 + PKER_RACCS ( 26, 26) = 0.336639E+00 + PKER_RACCS ( 26, 27) = 0.358880E+00 + PKER_RACCS ( 26, 28) = 0.377001E+00 + PKER_RACCS ( 26, 29) = 0.391788E+00 + PKER_RACCS ( 26, 30) = 0.403872E+00 + PKER_RACCS ( 26, 31) = 0.413761E+00 + PKER_RACCS ( 26, 32) = 0.421865E+00 + PKER_RACCS ( 26, 33) = 0.428514E+00 + PKER_RACCS ( 26, 34) = 0.433974E+00 + PKER_RACCS ( 26, 35) = 0.438462E+00 + PKER_RACCS ( 26, 36) = 0.442154E+00 + PKER_RACCS ( 26, 37) = 0.445192E+00 + PKER_RACCS ( 26, 38) = 0.447694E+00 + PKER_RACCS ( 26, 39) = 0.449755E+00 + PKER_RACCS ( 26, 40) = 0.451454E+00 + PKER_RACCS ( 27, 1) = 0.153513E+02 + PKER_RACCS ( 27, 2) = 0.126440E+02 + PKER_RACCS ( 27, 3) = 0.104024E+02 + PKER_RACCS ( 27, 4) = 0.854622E+01 + PKER_RACCS ( 27, 5) = 0.700904E+01 + PKER_RACCS ( 27, 6) = 0.573589E+01 + PKER_RACCS ( 27, 7) = 0.468125E+01 + PKER_RACCS ( 27, 8) = 0.380743E+01 + PKER_RACCS ( 27, 9) = 0.308321E+01 + PKER_RACCS ( 27, 10) = 0.248274E+01 + PKER_RACCS ( 27, 11) = 0.198462E+01 + PKER_RACCS ( 27, 12) = 0.157114E+01 + PKER_RACCS ( 27, 13) = 0.122770E+01 + PKER_RACCS ( 27, 14) = 0.942392E+00 + PKER_RACCS ( 27, 15) = 0.705810E+00 + PKER_RACCS ( 27, 16) = 0.511279E+00 + PKER_RACCS ( 27, 17) = 0.355415E+00 + PKER_RACCS ( 27, 18) = 0.238463E+00 + PKER_RACCS ( 27, 19) = 0.163223E+00 + PKER_RACCS ( 27, 20) = 0.130700E+00 + PKER_RACCS ( 27, 21) = 0.135369E+00 + PKER_RACCS ( 27, 22) = 0.164571E+00 + PKER_RACCS ( 27, 23) = 0.203879E+00 + PKER_RACCS ( 27, 24) = 0.242868E+00 + PKER_RACCS ( 27, 25) = 0.276880E+00 + PKER_RACCS ( 27, 26) = 0.305049E+00 + PKER_RACCS ( 27, 27) = 0.328022E+00 + PKER_RACCS ( 27, 28) = 0.346718E+00 + PKER_RACCS ( 27, 29) = 0.361946E+00 + PKER_RACCS ( 27, 30) = 0.374368E+00 + PKER_RACCS ( 27, 31) = 0.384516E+00 + PKER_RACCS ( 27, 32) = 0.392817E+00 + PKER_RACCS ( 27, 33) = 0.399617E+00 + PKER_RACCS ( 27, 34) = 0.405192E+00 + PKER_RACCS ( 27, 35) = 0.409769E+00 + PKER_RACCS ( 27, 36) = 0.413529E+00 + PKER_RACCS ( 27, 37) = 0.416620E+00 + PKER_RACCS ( 27, 38) = 0.419163E+00 + PKER_RACCS ( 27, 39) = 0.421256E+00 + PKER_RACCS ( 27, 40) = 0.422980E+00 + PKER_RACCS ( 28, 1) = 0.153787E+02 + PKER_RACCS ( 28, 2) = 0.126718E+02 + PKER_RACCS ( 28, 3) = 0.104307E+02 + PKER_RACCS ( 28, 4) = 0.857492E+01 + PKER_RACCS ( 28, 5) = 0.703823E+01 + PKER_RACCS ( 28, 6) = 0.576563E+01 + PKER_RACCS ( 28, 7) = 0.471159E+01 + PKER_RACCS ( 28, 8) = 0.383843E+01 + PKER_RACCS ( 28, 9) = 0.311494E+01 + PKER_RACCS ( 28, 10) = 0.251526E+01 + PKER_RACCS ( 28, 11) = 0.201799E+01 + PKER_RACCS ( 28, 12) = 0.160542E+01 + PKER_RACCS ( 28, 13) = 0.126288E+01 + PKER_RACCS ( 28, 14) = 0.978347E+00 + PKER_RACCS ( 28, 15) = 0.742102E+00 + PKER_RACCS ( 28, 16) = 0.546792E+00 + PKER_RACCS ( 28, 17) = 0.387821E+00 + PKER_RACCS ( 28, 18) = 0.264011E+00 + PKER_RACCS ( 28, 19) = 0.177228E+00 + PKER_RACCS ( 28, 20) = 0.129810E+00 + PKER_RACCS ( 28, 21) = 0.120099E+00 + PKER_RACCS ( 28, 22) = 0.139117E+00 + PKER_RACCS ( 28, 23) = 0.173453E+00 + PKER_RACCS ( 28, 24) = 0.211216E+00 + PKER_RACCS ( 28, 25) = 0.245678E+00 + PKER_RACCS ( 28, 26) = 0.274712E+00 + PKER_RACCS ( 28, 27) = 0.298492E+00 + PKER_RACCS ( 28, 28) = 0.317842E+00 + PKER_RACCS ( 28, 29) = 0.333584E+00 + PKER_RACCS ( 28, 30) = 0.346404E+00 + PKER_RACCS ( 28, 31) = 0.356858E+00 + PKER_RACCS ( 28, 32) = 0.365393E+00 + PKER_RACCS ( 28, 33) = 0.372373E+00 + PKER_RACCS ( 28, 34) = 0.378086E+00 + PKER_RACCS ( 28, 35) = 0.382769E+00 + PKER_RACCS ( 28, 36) = 0.386611E+00 + PKER_RACCS ( 28, 37) = 0.389765E+00 + PKER_RACCS ( 28, 38) = 0.392357E+00 + PKER_RACCS ( 28, 39) = 0.394489E+00 + PKER_RACCS ( 28, 40) = 0.396242E+00 + PKER_RACCS ( 29, 1) = 0.154034E+02 + PKER_RACCS ( 29, 2) = 0.126968E+02 + PKER_RACCS ( 29, 3) = 0.104560E+02 + PKER_RACCS ( 29, 4) = 0.860059E+01 + PKER_RACCS ( 29, 5) = 0.706430E+01 + PKER_RACCS ( 29, 6) = 0.579212E+01 + PKER_RACCS ( 29, 7) = 0.473855E+01 + PKER_RACCS ( 29, 8) = 0.386591E+01 + PKER_RACCS ( 29, 9) = 0.314299E+01 + PKER_RACCS ( 29, 10) = 0.254395E+01 + PKER_RACCS ( 29, 11) = 0.204738E+01 + PKER_RACCS ( 29, 12) = 0.163556E+01 + PKER_RACCS ( 29, 13) = 0.129383E+01 + PKER_RACCS ( 29, 14) = 0.101007E+01 + PKER_RACCS ( 29, 15) = 0.774394E+00 + PKER_RACCS ( 29, 16) = 0.579032E+00 + PKER_RACCS ( 29, 17) = 0.418516E+00 + PKER_RACCS ( 29, 18) = 0.290262E+00 + PKER_RACCS ( 29, 19) = 0.194914E+00 + PKER_RACCS ( 29, 20) = 0.134958E+00 + PKER_RACCS ( 29, 21) = 0.111247E+00 + PKER_RACCS ( 29, 22) = 0.118691E+00 + PKER_RACCS ( 29, 23) = 0.146181E+00 + PKER_RACCS ( 29, 24) = 0.181396E+00 + PKER_RACCS ( 29, 25) = 0.215756E+00 + PKER_RACCS ( 29, 26) = 0.245535E+00 + PKER_RACCS ( 29, 27) = 0.270155E+00 + PKER_RACCS ( 29, 28) = 0.290229E+00 + PKER_RACCS ( 29, 29) = 0.306555E+00 + PKER_RACCS ( 29, 30) = 0.319836E+00 + PKER_RACCS ( 29, 31) = 0.330648E+00 + PKER_RACCS ( 29, 32) = 0.339462E+00 + PKER_RACCS ( 29, 33) = 0.346655E+00 + PKER_RACCS ( 29, 34) = 0.352533E+00 + PKER_RACCS ( 29, 35) = 0.357343E+00 + PKER_RACCS ( 29, 36) = 0.361282E+00 + PKER_RACCS ( 29, 37) = 0.364512E+00 + PKER_RACCS ( 29, 38) = 0.367163E+00 + PKER_RACCS ( 29, 39) = 0.369340E+00 + PKER_RACCS ( 29, 40) = 0.371129E+00 + PKER_RACCS ( 30, 1) = 0.154257E+02 + PKER_RACCS ( 30, 2) = 0.127194E+02 + PKER_RACCS ( 30, 3) = 0.104788E+02 + PKER_RACCS ( 30, 4) = 0.862370E+01 + PKER_RACCS ( 30, 5) = 0.708771E+01 + PKER_RACCS ( 30, 6) = 0.581587E+01 + PKER_RACCS ( 30, 7) = 0.476266E+01 + PKER_RACCS ( 30, 8) = 0.389043E+01 + PKER_RACCS ( 30, 9) = 0.316795E+01 + PKER_RACCS ( 30, 10) = 0.256941E+01 + PKER_RACCS ( 30, 11) = 0.207340E+01 + PKER_RACCS ( 30, 12) = 0.166220E+01 + PKER_RACCS ( 30, 13) = 0.132114E+01 + PKER_RACCS ( 30, 14) = 0.103807E+01 + PKER_RACCS ( 30, 15) = 0.803030E+00 + PKER_RACCS ( 30, 16) = 0.607970E+00 + PKER_RACCS ( 30, 17) = 0.446859E+00 + PKER_RACCS ( 30, 18) = 0.316050E+00 + PKER_RACCS ( 30, 19) = 0.214747E+00 + PKER_RACCS ( 30, 20) = 0.144869E+00 + PKER_RACCS ( 30, 21) = 0.108490E+00 + PKER_RACCS ( 30, 22) = 0.103788E+00 + PKER_RACCS ( 30, 23) = 0.122733E+00 + PKER_RACCS ( 30, 24) = 0.153869E+00 + PKER_RACCS ( 30, 25) = 0.187267E+00 + PKER_RACCS ( 30, 26) = 0.217494E+00 + PKER_RACCS ( 30, 27) = 0.242915E+00 + PKER_RACCS ( 30, 28) = 0.263753E+00 + PKER_RACCS ( 30, 29) = 0.280725E+00 + PKER_RACCS ( 30, 30) = 0.294528E+00 + PKER_RACCS ( 30, 31) = 0.305756E+00 + PKER_RACCS ( 30, 32) = 0.314894E+00 + PKER_RACCS ( 30, 33) = 0.322340E+00 + PKER_RACCS ( 30, 34) = 0.328414E+00 + PKER_RACCS ( 30, 35) = 0.333374E+00 + PKER_RACCS ( 30, 36) = 0.337431E+00 + PKER_RACCS ( 30, 37) = 0.340751E+00 + PKER_RACCS ( 30, 38) = 0.343472E+00 + PKER_RACCS ( 30, 39) = 0.345703E+00 + PKER_RACCS ( 30, 40) = 0.347534E+00 + PKER_RACCS ( 31, 1) = 0.154460E+02 + PKER_RACCS ( 31, 2) = 0.127399E+02 + PKER_RACCS ( 31, 3) = 0.104995E+02 + PKER_RACCS ( 31, 4) = 0.864461E+01 + PKER_RACCS ( 31, 5) = 0.710885E+01 + PKER_RACCS ( 31, 6) = 0.583727E+01 + PKER_RACCS ( 31, 7) = 0.478435E+01 + PKER_RACCS ( 31, 8) = 0.391243E+01 + PKER_RACCS ( 31, 9) = 0.319031E+01 + PKER_RACCS ( 31, 10) = 0.259216E+01 + PKER_RACCS ( 31, 11) = 0.209658E+01 + PKER_RACCS ( 31, 12) = 0.168588E+01 + PKER_RACCS ( 31, 13) = 0.134536E+01 + PKER_RACCS ( 31, 14) = 0.106288E+01 + PKER_RACCS ( 31, 15) = 0.828426E+00 + PKER_RACCS ( 31, 16) = 0.633811E+00 + PKER_RACCS ( 31, 17) = 0.472627E+00 + PKER_RACCS ( 31, 18) = 0.340455E+00 + PKER_RACCS ( 31, 19) = 0.235395E+00 + PKER_RACCS ( 31, 20) = 0.158197E+00 + PKER_RACCS ( 31, 21) = 0.111047E+00 + PKER_RACCS ( 31, 22) = 0.944902E-01 + PKER_RACCS ( 31, 23) = 0.103740E+00 + PKER_RACCS ( 31, 24) = 0.129188E+00 + PKER_RACCS ( 31, 25) = 0.160505E+00 + PKER_RACCS ( 31, 26) = 0.190663E+00 + PKER_RACCS ( 31, 27) = 0.216732E+00 + PKER_RACCS ( 31, 28) = 0.238325E+00 + PKER_RACCS ( 31, 29) = 0.255978E+00 + PKER_RACCS ( 31, 30) = 0.270357E+00 + PKER_RACCS ( 31, 31) = 0.282055E+00 + PKER_RACCS ( 31, 32) = 0.291568E+00 + PKER_RACCS ( 31, 33) = 0.299310E+00 + PKER_RACCS ( 31, 34) = 0.305614E+00 + PKER_RACCS ( 31, 35) = 0.310754E+00 + PKER_RACCS ( 31, 36) = 0.314949E+00 + PKER_RACCS ( 31, 37) = 0.318377E+00 + PKER_RACCS ( 31, 38) = 0.321181E+00 + PKER_RACCS ( 31, 39) = 0.323477E+00 + PKER_RACCS ( 31, 40) = 0.325358E+00 + PKER_RACCS ( 32, 1) = 0.154645E+02 + PKER_RACCS ( 32, 2) = 0.127586E+02 + PKER_RACCS ( 32, 3) = 0.105183E+02 + PKER_RACCS ( 32, 4) = 0.866361E+01 + PKER_RACCS ( 32, 5) = 0.712804E+01 + PKER_RACCS ( 32, 6) = 0.585666E+01 + PKER_RACCS ( 32, 7) = 0.480396E+01 + PKER_RACCS ( 32, 8) = 0.393229E+01 + PKER_RACCS ( 32, 9) = 0.321044E+01 + PKER_RACCS ( 32, 10) = 0.261259E+01 + PKER_RACCS ( 32, 11) = 0.211736E+01 + PKER_RACCS ( 32, 12) = 0.170704E+01 + PKER_RACCS ( 32, 13) = 0.136696E+01 + PKER_RACCS ( 32, 14) = 0.108496E+01 + PKER_RACCS ( 32, 15) = 0.851011E+00 + PKER_RACCS ( 32, 16) = 0.656851E+00 + PKER_RACCS ( 32, 17) = 0.495858E+00 + PKER_RACCS ( 32, 18) = 0.363104E+00 + PKER_RACCS ( 32, 19) = 0.255729E+00 + PKER_RACCS ( 32, 20) = 0.173391E+00 + PKER_RACCS ( 32, 21) = 0.117751E+00 + PKER_RACCS ( 32, 22) = 0.904719E-01 + PKER_RACCS ( 32, 23) = 0.895825E-01 + PKER_RACCS ( 32, 24) = 0.107971E+00 + PKER_RACCS ( 32, 25) = 0.135888E+00 + PKER_RACCS ( 32, 26) = 0.165226E+00 + PKER_RACCS ( 32, 27) = 0.191642E+00 + PKER_RACCS ( 32, 28) = 0.213902E+00 + PKER_RACCS ( 32, 29) = 0.232232E+00 + PKER_RACCS ( 32, 30) = 0.247217E+00 + PKER_RACCS ( 32, 31) = 0.259430E+00 + PKER_RACCS ( 32, 32) = 0.269367E+00 + PKER_RACCS ( 32, 33) = 0.277448E+00 + PKER_RACCS ( 32, 34) = 0.284022E+00 + PKER_RACCS ( 32, 35) = 0.289372E+00 + PKER_RACCS ( 32, 36) = 0.293732E+00 + PKER_RACCS ( 32, 37) = 0.297288E+00 + PKER_RACCS ( 32, 38) = 0.300191E+00 + PKER_RACCS ( 32, 39) = 0.302565E+00 + PKER_RACCS ( 32, 40) = 0.304507E+00 + PKER_RACCS ( 33, 1) = 0.154815E+02 + PKER_RACCS ( 33, 2) = 0.127757E+02 + PKER_RACCS ( 33, 3) = 0.105355E+02 + PKER_RACCS ( 33, 4) = 0.868096E+01 + PKER_RACCS ( 33, 5) = 0.714554E+01 + PKER_RACCS ( 33, 6) = 0.587431E+01 + PKER_RACCS ( 33, 7) = 0.482179E+01 + PKER_RACCS ( 33, 8) = 0.395030E+01 + PKER_RACCS ( 33, 9) = 0.322867E+01 + PKER_RACCS ( 33, 10) = 0.263106E+01 + PKER_RACCS ( 33, 11) = 0.213609E+01 + PKER_RACCS ( 33, 12) = 0.172607E+01 + PKER_RACCS ( 33, 13) = 0.138633E+01 + PKER_RACCS ( 33, 14) = 0.110471E+01 + PKER_RACCS ( 33, 15) = 0.871183E+00 + PKER_RACCS ( 33, 16) = 0.677438E+00 + PKER_RACCS ( 33, 17) = 0.516731E+00 + PKER_RACCS ( 33, 18) = 0.383819E+00 + PKER_RACCS ( 33, 19) = 0.275185E+00 + PKER_RACCS ( 33, 20) = 0.189408E+00 + PKER_RACCS ( 33, 21) = 0.127387E+00 + PKER_RACCS ( 33, 22) = 0.909968E-01 + PKER_RACCS ( 33, 23) = 0.802651E-01 + PKER_RACCS ( 33, 24) = 0.906465E-01 + PKER_RACCS ( 33, 25) = 0.113901E+00 + PKER_RACCS ( 33, 26) = 0.141477E+00 + PKER_RACCS ( 33, 27) = 0.167764E+00 + PKER_RACCS ( 33, 28) = 0.190502E+00 + PKER_RACCS ( 33, 29) = 0.209445E+00 + PKER_RACCS ( 33, 30) = 0.225030E+00 + PKER_RACCS ( 33, 31) = 0.237783E+00 + PKER_RACCS ( 33, 32) = 0.248183E+00 + PKER_RACCS ( 33, 33) = 0.256648E+00 + PKER_RACCS ( 33, 34) = 0.263530E+00 + PKER_RACCS ( 33, 35) = 0.269127E+00 + PKER_RACCS ( 33, 36) = 0.273680E+00 + PKER_RACCS ( 33, 37) = 0.277387E+00 + PKER_RACCS ( 33, 38) = 0.280409E+00 + PKER_RACCS ( 33, 39) = 0.282874E+00 + PKER_RACCS ( 33, 40) = 0.284888E+00 + PKER_RACCS ( 34, 1) = 0.154971E+02 + PKER_RACCS ( 34, 2) = 0.127914E+02 + PKER_RACCS ( 34, 3) = 0.105513E+02 + PKER_RACCS ( 34, 4) = 0.869687E+01 + PKER_RACCS ( 34, 5) = 0.716155E+01 + PKER_RACCS ( 34, 6) = 0.589045E+01 + PKER_RACCS ( 34, 7) = 0.483806E+01 + PKER_RACCS ( 34, 8) = 0.396672E+01 + PKER_RACCS ( 34, 9) = 0.324525E+01 + PKER_RACCS ( 34, 10) = 0.264782E+01 + PKER_RACCS ( 34, 11) = 0.215307E+01 + PKER_RACCS ( 34, 12) = 0.174328E+01 + PKER_RACCS ( 34, 13) = 0.140380E+01 + PKER_RACCS ( 34, 14) = 0.112249E+01 + PKER_RACCS ( 34, 15) = 0.889288E+00 + PKER_RACCS ( 34, 16) = 0.695896E+00 + PKER_RACCS ( 34, 17) = 0.535492E+00 + PKER_RACCS ( 34, 18) = 0.402635E+00 + PKER_RACCS ( 34, 19) = 0.293345E+00 + PKER_RACCS ( 34, 20) = 0.205473E+00 + PKER_RACCS ( 34, 21) = 0.138918E+00 + PKER_RACCS ( 34, 22) = 0.951741E-01 + PKER_RACCS ( 34, 23) = 0.754374E-01 + PKER_RACCS ( 34, 24) = 0.774875E-01 + PKER_RACCS ( 34, 25) = 0.949890E-01 + PKER_RACCS ( 34, 26) = 0.119774E+00 + PKER_RACCS ( 34, 27) = 0.145296E+00 + PKER_RACCS ( 34, 28) = 0.168211E+00 + PKER_RACCS ( 34, 29) = 0.187630E+00 + PKER_RACCS ( 34, 30) = 0.203759E+00 + PKER_RACCS ( 34, 31) = 0.217043E+00 + PKER_RACCS ( 34, 32) = 0.227927E+00 + PKER_RACCS ( 34, 33) = 0.236809E+00 + PKER_RACCS ( 34, 34) = 0.244039E+00 + PKER_RACCS ( 34, 35) = 0.249918E+00 + PKER_RACCS ( 34, 36) = 0.254696E+00 + PKER_RACCS ( 34, 37) = 0.258581E+00 + PKER_RACCS ( 34, 38) = 0.261742E+00 + PKER_RACCS ( 34, 39) = 0.264317E+00 + PKER_RACCS ( 34, 40) = 0.266416E+00 + PKER_RACCS ( 35, 1) = 0.155115E+02 + PKER_RACCS ( 35, 2) = 0.128058E+02 + PKER_RACCS ( 35, 3) = 0.105659E+02 + PKER_RACCS ( 35, 4) = 0.871149E+01 + PKER_RACCS ( 35, 5) = 0.717627E+01 + PKER_RACCS ( 35, 6) = 0.590526E+01 + PKER_RACCS ( 35, 7) = 0.485298E+01 + PKER_RACCS ( 35, 8) = 0.398175E+01 + PKER_RACCS ( 35, 9) = 0.326040E+01 + PKER_RACCS ( 35, 10) = 0.266312E+01 + PKER_RACCS ( 35, 11) = 0.216852E+01 + PKER_RACCS ( 35, 12) = 0.175891E+01 + PKER_RACCS ( 35, 13) = 0.141964E+01 + PKER_RACCS ( 35, 14) = 0.113856E+01 + PKER_RACCS ( 35, 15) = 0.905624E+00 + PKER_RACCS ( 35, 16) = 0.712519E+00 + PKER_RACCS ( 35, 17) = 0.552390E+00 + PKER_RACCS ( 35, 18) = 0.419682E+00 + PKER_RACCS ( 35, 19) = 0.310127E+00 + PKER_RACCS ( 35, 20) = 0.220956E+00 + PKER_RACCS ( 35, 21) = 0.151287E+00 + PKER_RACCS ( 35, 22) = 0.101963E+00 + PKER_RACCS ( 35, 23) = 0.745072E-01 + PKER_RACCS ( 35, 24) = 0.684396E-01 + PKER_RACCS ( 35, 25) = 0.794810E-01 + PKER_RACCS ( 35, 26) = 0.100476E+00 + PKER_RACCS ( 35, 27) = 0.124496E+00 + PKER_RACCS ( 35, 28) = 0.147175E+00 + PKER_RACCS ( 35, 29) = 0.166857E+00 + PKER_RACCS ( 35, 30) = 0.183413E+00 + PKER_RACCS ( 35, 31) = 0.197175E+00 + PKER_RACCS ( 35, 32) = 0.208532E+00 + PKER_RACCS ( 35, 33) = 0.217848E+00 + PKER_RACCS ( 35, 34) = 0.225456E+00 + PKER_RACCS ( 35, 35) = 0.231651E+00 + PKER_RACCS ( 35, 36) = 0.236687E+00 + PKER_RACCS ( 35, 37) = 0.240779E+00 + PKER_RACCS ( 35, 38) = 0.244104E+00 + PKER_RACCS ( 35, 39) = 0.246808E+00 + PKER_RACCS ( 35, 40) = 0.249007E+00 + PKER_RACCS ( 36, 1) = 0.155248E+02 + PKER_RACCS ( 36, 2) = 0.128192E+02 + PKER_RACCS ( 36, 3) = 0.105793E+02 + PKER_RACCS ( 36, 4) = 0.872498E+01 + PKER_RACCS ( 36, 5) = 0.718982E+01 + PKER_RACCS ( 36, 6) = 0.591889E+01 + PKER_RACCS ( 36, 7) = 0.486669E+01 + PKER_RACCS ( 36, 8) = 0.399555E+01 + PKER_RACCS ( 36, 9) = 0.327430E+01 + PKER_RACCS ( 36, 10) = 0.267713E+01 + PKER_RACCS ( 36, 11) = 0.218265E+01 + PKER_RACCS ( 36, 12) = 0.177318E+01 + PKER_RACCS ( 36, 13) = 0.143407E+01 + PKER_RACCS ( 36, 14) = 0.115317E+01 + PKER_RACCS ( 36, 15) = 0.920438E+00 + PKER_RACCS ( 36, 16) = 0.727562E+00 + PKER_RACCS ( 36, 17) = 0.567668E+00 + PKER_RACCS ( 36, 18) = 0.435133E+00 + PKER_RACCS ( 36, 19) = 0.325510E+00 + PKER_RACCS ( 36, 20) = 0.235636E+00 + PKER_RACCS ( 36, 21) = 0.163886E+00 + PKER_RACCS ( 36, 22) = 0.110458E+00 + PKER_RACCS ( 36, 23) = 0.766826E-01 + PKER_RACCS ( 36, 24) = 0.631683E-01 + PKER_RACCS ( 36, 25) = 0.674487E-01 + PKER_RACCS ( 36, 26) = 0.838666E-01 + PKER_RACCS ( 36, 27) = 0.105624E+00 + PKER_RACCS ( 36, 28) = 0.127576E+00 + PKER_RACCS ( 36, 29) = 0.147242E+00 + PKER_RACCS ( 36, 30) = 0.164054E+00 + PKER_RACCS ( 36, 31) = 0.178188E+00 + PKER_RACCS ( 36, 32) = 0.189965E+00 + PKER_RACCS ( 36, 33) = 0.199703E+00 + PKER_RACCS ( 36, 34) = 0.207702E+00 + PKER_RACCS ( 36, 35) = 0.214240E+00 + PKER_RACCS ( 36, 36) = 0.219565E+00 + PKER_RACCS ( 36, 37) = 0.223893E+00 + PKER_RACCS ( 36, 38) = 0.227409E+00 + PKER_RACCS ( 36, 39) = 0.230264E+00 + PKER_RACCS ( 36, 40) = 0.232583E+00 + PKER_RACCS ( 37, 1) = 0.155372E+02 + PKER_RACCS ( 37, 2) = 0.128316E+02 + PKER_RACCS ( 37, 3) = 0.105917E+02 + PKER_RACCS ( 37, 4) = 0.873745E+01 + PKER_RACCS ( 37, 5) = 0.720235E+01 + PKER_RACCS ( 37, 6) = 0.593147E+01 + PKER_RACCS ( 37, 7) = 0.487933E+01 + PKER_RACCS ( 37, 8) = 0.400827E+01 + PKER_RACCS ( 37, 9) = 0.328710E+01 + PKER_RACCS ( 37, 10) = 0.269001E+01 + PKER_RACCS ( 37, 11) = 0.219563E+01 + PKER_RACCS ( 37, 12) = 0.178626E+01 + PKER_RACCS ( 37, 13) = 0.144727E+01 + PKER_RACCS ( 37, 14) = 0.116651E+01 + PKER_RACCS ( 37, 15) = 0.933935E+00 + PKER_RACCS ( 37, 16) = 0.741238E+00 + PKER_RACCS ( 37, 17) = 0.581536E+00 + PKER_RACCS ( 37, 18) = 0.449170E+00 + PKER_RACCS ( 37, 19) = 0.339580E+00 + PKER_RACCS ( 37, 20) = 0.249319E+00 + PKER_RACCS ( 37, 21) = 0.176301E+00 + PKER_RACCS ( 37, 22) = 0.119980E+00 + PKER_RACCS ( 37, 23) = 0.812228E-01 + PKER_RACCS ( 37, 24) = 0.611617E-01 + PKER_RACCS ( 37, 25) = 0.588377E-01 + PKER_RACCS ( 37, 26) = 0.701370E-01 + PKER_RACCS ( 37, 27) = 0.889143E-01 + PKER_RACCS ( 37, 28) = 0.109599E+00 + PKER_RACCS ( 37, 29) = 0.128927E+00 + PKER_RACCS ( 37, 30) = 0.145782E+00 + PKER_RACCS ( 37, 31) = 0.160136E+00 + PKER_RACCS ( 37, 32) = 0.172235E+00 + PKER_RACCS ( 37, 33) = 0.182345E+00 + PKER_RACCS ( 37, 34) = 0.190722E+00 + PKER_RACCS ( 37, 35) = 0.197614E+00 + PKER_RACCS ( 37, 36) = 0.203250E+00 + PKER_RACCS ( 37, 37) = 0.207843E+00 + PKER_RACCS ( 37, 38) = 0.211576E+00 + PKER_RACCS ( 37, 39) = 0.214606E+00 + PKER_RACCS ( 37, 40) = 0.217065E+00 + PKER_RACCS ( 38, 1) = 0.155486E+02 + PKER_RACCS ( 38, 2) = 0.128431E+02 + PKER_RACCS ( 38, 3) = 0.106033E+02 + PKER_RACCS ( 38, 4) = 0.874901E+01 + PKER_RACCS ( 38, 5) = 0.721394E+01 + PKER_RACCS ( 38, 6) = 0.594312E+01 + PKER_RACCS ( 38, 7) = 0.489103E+01 + PKER_RACCS ( 38, 8) = 0.402001E+01 + PKER_RACCS ( 38, 9) = 0.329890E+01 + PKER_RACCS ( 38, 10) = 0.270188E+01 + PKER_RACCS ( 38, 11) = 0.220757E+01 + PKER_RACCS ( 38, 12) = 0.179829E+01 + PKER_RACCS ( 38, 13) = 0.145939E+01 + PKER_RACCS ( 38, 14) = 0.117873E+01 + PKER_RACCS ( 38, 15) = 0.946284E+00 + PKER_RACCS ( 38, 16) = 0.753726E+00 + PKER_RACCS ( 38, 17) = 0.594177E+00 + PKER_RACCS ( 38, 18) = 0.461958E+00 + PKER_RACCS ( 38, 19) = 0.352443E+00 + PKER_RACCS ( 38, 20) = 0.262014E+00 + PKER_RACCS ( 38, 21) = 0.188177E+00 + PKER_RACCS ( 38, 22) = 0.129859E+00 + PKER_RACCS ( 38, 23) = 0.873684E-01 + PKER_RACCS ( 38, 24) = 0.618482E-01 + PKER_RACCS ( 38, 25) = 0.533670E-01 + PKER_RACCS ( 38, 26) = 0.593061E-01 + PKER_RACCS ( 38, 27) = 0.745116E-01 + PKER_RACCS ( 38, 28) = 0.934019E-01 + PKER_RACCS ( 38, 29) = 0.112045E+00 + PKER_RACCS ( 38, 30) = 0.128716E+00 + PKER_RACCS ( 38, 31) = 0.143109E+00 + PKER_RACCS ( 38, 32) = 0.155390E+00 + PKER_RACCS ( 38, 33) = 0.165779E+00 + PKER_RACCS ( 38, 34) = 0.174487E+00 + PKER_RACCS ( 38, 35) = 0.181718E+00 + PKER_RACCS ( 38, 36) = 0.187676E+00 + PKER_RACCS ( 38, 37) = 0.192553E+00 + PKER_RACCS ( 38, 38) = 0.196528E+00 + PKER_RACCS ( 38, 39) = 0.199758E+00 + PKER_RACCS ( 38, 40) = 0.202379E+00 + PKER_RACCS ( 39, 1) = 0.155593E+02 + PKER_RACCS ( 39, 2) = 0.128537E+02 + PKER_RACCS ( 39, 3) = 0.106139E+02 + PKER_RACCS ( 39, 4) = 0.875973E+01 + PKER_RACCS ( 39, 5) = 0.722471E+01 + PKER_RACCS ( 39, 6) = 0.595391E+01 + PKER_RACCS ( 39, 7) = 0.490186E+01 + PKER_RACCS ( 39, 8) = 0.403089E+01 + PKER_RACCS ( 39, 9) = 0.330982E+01 + PKER_RACCS ( 39, 10) = 0.271285E+01 + PKER_RACCS ( 39, 11) = 0.221860E+01 + PKER_RACCS ( 39, 12) = 0.180938E+01 + PKER_RACCS ( 39, 13) = 0.147055E+01 + PKER_RACCS ( 39, 14) = 0.118998E+01 + PKER_RACCS ( 39, 15) = 0.957626E+00 + PKER_RACCS ( 39, 16) = 0.765175E+00 + PKER_RACCS ( 39, 17) = 0.605746E+00 + PKER_RACCS ( 39, 18) = 0.473650E+00 + PKER_RACCS ( 39, 19) = 0.364221E+00 + PKER_RACCS ( 39, 20) = 0.273730E+00 + PKER_RACCS ( 39, 21) = 0.199436E+00 + PKER_RACCS ( 39, 22) = 0.139756E+00 + PKER_RACCS ( 39, 23) = 0.945196E-01 + PKER_RACCS ( 39, 24) = 0.645897E-01 + PKER_RACCS ( 39, 25) = 0.506197E-01 + PKER_RACCS ( 39, 26) = 0.512198E-01 + PKER_RACCS ( 39, 27) = 0.624590E-01 + PKER_RACCS ( 39, 28) = 0.790782E-01 + PKER_RACCS ( 39, 29) = 0.966942E-01 + PKER_RACCS ( 39, 30) = 0.112959E+00 + PKER_RACCS ( 39, 31) = 0.127212E+00 + PKER_RACCS ( 39, 32) = 0.139513E+00 + PKER_RACCS ( 39, 33) = 0.150051E+00 + PKER_RACCS ( 39, 34) = 0.159002E+00 + PKER_RACCS ( 39, 35) = 0.166528E+00 + PKER_RACCS ( 39, 36) = 0.172792E+00 + PKER_RACCS ( 39, 37) = 0.177962E+00 + PKER_RACCS ( 39, 38) = 0.182197E+00 + PKER_RACCS ( 39, 39) = 0.185650E+00 + PKER_RACCS ( 39, 40) = 0.188455E+00 + PKER_RACCS ( 40, 1) = 0.155692E+02 + PKER_RACCS ( 40, 2) = 0.128637E+02 + PKER_RACCS ( 40, 3) = 0.106239E+02 + PKER_RACCS ( 40, 4) = 0.876971E+01 + PKER_RACCS ( 40, 5) = 0.723471E+01 + PKER_RACCS ( 40, 6) = 0.596394E+01 + PKER_RACCS ( 40, 7) = 0.491192E+01 + PKER_RACCS ( 40, 8) = 0.404098E+01 + PKER_RACCS ( 40, 9) = 0.331995E+01 + PKER_RACCS ( 40, 10) = 0.272302E+01 + PKER_RACCS ( 40, 11) = 0.222881E+01 + PKER_RACCS ( 40, 12) = 0.181964E+01 + PKER_RACCS ( 40, 13) = 0.148087E+01 + PKER_RACCS ( 40, 14) = 0.120036E+01 + PKER_RACCS ( 40, 15) = 0.968076E+00 + PKER_RACCS ( 40, 16) = 0.775708E+00 + PKER_RACCS ( 40, 17) = 0.616371E+00 + PKER_RACCS ( 40, 18) = 0.484375E+00 + PKER_RACCS ( 40, 19) = 0.375030E+00 + PKER_RACCS ( 40, 20) = 0.284536E+00 + PKER_RACCS ( 40, 21) = 0.209971E+00 + PKER_RACCS ( 40, 22) = 0.149448E+00 + PKER_RACCS ( 40, 23) = 0.102257E+00 + PKER_RACCS ( 40, 24) = 0.688589E-01 + PKER_RACCS ( 40, 25) = 0.501439E-01 + PKER_RACCS ( 40, 26) = 0.457017E-01 + PKER_RACCS ( 40, 27) = 0.527560E-01 + PKER_RACCS ( 40, 28) = 0.666825E-01 + PKER_RACCS ( 40, 29) = 0.829271E-01 + PKER_RACCS ( 40, 30) = 0.985768E-01 + PKER_RACCS ( 40, 31) = 0.112531E+00 + PKER_RACCS ( 40, 32) = 0.124696E+00 + PKER_RACCS ( 40, 33) = 0.135236E+00 + PKER_RACCS ( 40, 34) = 0.144309E+00 + PKER_RACCS ( 40, 35) = 0.152047E+00 + PKER_RACCS ( 40, 36) = 0.158575E+00 + PKER_RACCS ( 40, 37) = 0.164022E+00 + PKER_RACCS ( 40, 38) = 0.168524E+00 + PKER_RACCS ( 40, 39) = 0.172216E+00 + PKER_RACCS ( 40, 40) = 0.175226E+00 +END IF +! +IF( PRESENT(PKER_SACCRG) ) THEN + PKER_SACCRG( 1, 1) = 0.403346E-01 + PKER_SACCRG( 1, 2) = 0.679214E-01 + PKER_SACCRG( 1, 3) = 0.105303E+00 + PKER_SACCRG( 1, 4) = 0.191884E+00 + PKER_SACCRG( 1, 5) = 0.356499E+00 + PKER_SACCRG( 1, 6) = 0.645361E+00 + PKER_SACCRG( 1, 7) = 0.109656E+01 + PKER_SACCRG( 1, 8) = 0.172233E+01 + PKER_SACCRG( 1, 9) = 0.249565E+01 + PKER_SACCRG( 1, 10) = 0.335221E+01 + PKER_SACCRG( 1, 11) = 0.421020E+01 + PKER_SACCRG( 1, 12) = 0.500014E+01 + PKER_SACCRG( 1, 13) = 0.568528E+01 + PKER_SACCRG( 1, 14) = 0.626334E+01 + PKER_SACCRG( 1, 15) = 0.675253E+01 + PKER_SACCRG( 1, 16) = 0.717505E+01 + PKER_SACCRG( 1, 17) = 0.754648E+01 + PKER_SACCRG( 1, 18) = 0.787497E+01 + PKER_SACCRG( 1, 19) = 0.816359E+01 + PKER_SACCRG( 1, 20) = 0.839531E+01 + PKER_SACCRG( 1, 21) = 0.861132E+01 + PKER_SACCRG( 1, 22) = 0.879448E+01 + PKER_SACCRG( 1, 23) = 0.891918E+01 + PKER_SACCRG( 1, 24) = 0.905216E+01 + PKER_SACCRG( 1, 25) = 0.913347E+01 + PKER_SACCRG( 1, 26) = 0.920118E+01 + PKER_SACCRG( 1, 27) = 0.926006E+01 + PKER_SACCRG( 1, 28) = 0.928744E+01 + PKER_SACCRG( 1, 29) = 0.931698E+01 + PKER_SACCRG( 1, 30) = 0.934860E+01 + PKER_SACCRG( 1, 31) = 0.936637E+01 + PKER_SACCRG( 1, 32) = 0.937727E+01 + PKER_SACCRG( 1, 33) = 0.938596E+01 + PKER_SACCRG( 1, 34) = 0.938735E+01 + PKER_SACCRG( 1, 35) = 0.939455E+01 + PKER_SACCRG( 1, 36) = 0.940989E+01 + PKER_SACCRG( 1, 37) = 0.000000E+00 + PKER_SACCRG( 1, 38) = 0.000000E+00 + PKER_SACCRG( 1, 39) = 0.000000E+00 + PKER_SACCRG( 1, 40) = 0.000000E+00 + PKER_SACCRG( 2, 1) = 0.232705E-01 + PKER_SACCRG( 2, 2) = 0.335875E-01 + PKER_SACCRG( 2, 3) = 0.565187E-01 + PKER_SACCRG( 2, 4) = 0.875474E-01 + PKER_SACCRG( 2, 5) = 0.159343E+00 + PKER_SACCRG( 2, 6) = 0.295630E+00 + PKER_SACCRG( 2, 7) = 0.534289E+00 + PKER_SACCRG( 2, 8) = 0.906069E+00 + PKER_SACCRG( 2, 9) = 0.141997E+01 + PKER_SACCRG( 2, 10) = 0.205255E+01 + PKER_SACCRG( 2, 11) = 0.274997E+01 + PKER_SACCRG( 2, 12) = 0.344544E+01 + PKER_SACCRG( 2, 13) = 0.408314E+01 + PKER_SACCRG( 2, 14) = 0.463534E+01 + PKER_SACCRG( 2, 15) = 0.510239E+01 + PKER_SACCRG( 2, 16) = 0.550069E+01 + PKER_SACCRG( 2, 17) = 0.584817E+01 + PKER_SACCRG( 2, 18) = 0.615710E+01 + PKER_SACCRG( 2, 19) = 0.643286E+01 + PKER_SACCRG( 2, 20) = 0.665945E+01 + PKER_SACCRG( 2, 21) = 0.687323E+01 + PKER_SACCRG( 2, 22) = 0.705716E+01 + PKER_SACCRG( 2, 23) = 0.718460E+01 + PKER_SACCRG( 2, 24) = 0.732011E+01 + PKER_SACCRG( 2, 25) = 0.740395E+01 + PKER_SACCRG( 2, 26) = 0.747372E+01 + PKER_SACCRG( 2, 27) = 0.753430E+01 + PKER_SACCRG( 2, 28) = 0.756268E+01 + PKER_SACCRG( 2, 29) = 0.759307E+01 + PKER_SACCRG( 2, 30) = 0.762550E+01 + PKER_SACCRG( 2, 31) = 0.764373E+01 + PKER_SACCRG( 2, 32) = 0.765493E+01 + PKER_SACCRG( 2, 33) = 0.766384E+01 + PKER_SACCRG( 2, 34) = 0.766528E+01 + PKER_SACCRG( 2, 35) = 0.767265E+01 + PKER_SACCRG( 2, 36) = 0.768832E+01 + PKER_SACCRG( 2, 37) = 0.000000E+00 + PKER_SACCRG( 2, 38) = 0.000000E+00 + PKER_SACCRG( 2, 39) = 0.000000E+00 + PKER_SACCRG( 2, 40) = 0.000000E+00 + PKER_SACCRG( 3, 1) = 0.183931E-01 + PKER_SACCRG( 3, 2) = 0.194765E-01 + PKER_SACCRG( 3, 3) = 0.280964E-01 + PKER_SACCRG( 3, 4) = 0.472341E-01 + PKER_SACCRG( 3, 5) = 0.730819E-01 + PKER_SACCRG( 3, 6) = 0.132827E+00 + PKER_SACCRG( 3, 7) = 0.245992E+00 + PKER_SACCRG( 3, 8) = 0.443632E+00 + PKER_SACCRG( 3, 9) = 0.750424E+00 + PKER_SACCRG( 3, 10) = 0.117268E+01 + PKER_SACCRG( 3, 11) = 0.168954E+01 + PKER_SACCRG( 3, 12) = 0.225593E+01 + PKER_SACCRG( 3, 13) = 0.281701E+01 + PKER_SACCRG( 3, 14) = 0.332851E+01 + PKER_SACCRG( 3, 15) = 0.377021E+01 + PKER_SACCRG( 3, 16) = 0.414495E+01 + PKER_SACCRG( 3, 17) = 0.446759E+01 + PKER_SACCRG( 3, 18) = 0.475325E+01 + PKER_SACCRG( 3, 19) = 0.501103E+01 + PKER_SACCRG( 3, 20) = 0.522794E+01 + PKER_SACCRG( 3, 21) = 0.543570E+01 + PKER_SACCRG( 3, 22) = 0.561785E+01 + PKER_SACCRG( 3, 23) = 0.574685E+01 + PKER_SACCRG( 3, 24) = 0.588391E+01 + PKER_SACCRG( 3, 25) = 0.597001E+01 + PKER_SACCRG( 3, 26) = 0.604169E+01 + PKER_SACCRG( 3, 27) = 0.610387E+01 + PKER_SACCRG( 3, 28) = 0.613328E+01 + PKER_SACCRG( 3, 29) = 0.616451E+01 + PKER_SACCRG( 3, 30) = 0.619771E+01 + PKER_SACCRG( 3, 31) = 0.621641E+01 + PKER_SACCRG( 3, 32) = 0.622789E+01 + PKER_SACCRG( 3, 33) = 0.623702E+01 + PKER_SACCRG( 3, 34) = 0.623852E+01 + PKER_SACCRG( 3, 35) = 0.624605E+01 + PKER_SACCRG( 3, 36) = 0.626204E+01 + PKER_SACCRG( 3, 37) = 0.000000E+00 + PKER_SACCRG( 3, 38) = 0.000000E+00 + PKER_SACCRG( 3, 39) = 0.000000E+00 + PKER_SACCRG( 3, 40) = 0.000000E+00 + PKER_SACCRG( 4, 1) = 0.114393E-01 + PKER_SACCRG( 4, 2) = 0.155094E-01 + PKER_SACCRG( 4, 3) = 0.164106E-01 + PKER_SACCRG( 4, 4) = 0.236526E-01 + PKER_SACCRG( 4, 5) = 0.397213E-01 + PKER_SACCRG( 4, 6) = 0.613666E-01 + PKER_SACCRG( 4, 7) = 0.111326E+00 + PKER_SACCRG( 4, 8) = 0.205685E+00 + PKER_SACCRG( 4, 9) = 0.369928E+00 + PKER_SACCRG( 4, 10) = 0.623698E+00 + PKER_SACCRG( 4, 11) = 0.970783E+00 + PKER_SACCRG( 4, 12) = 0.139255E+01 + PKER_SACCRG( 4, 13) = 0.185072E+01 + PKER_SACCRG( 4, 14) = 0.230015E+01 + PKER_SACCRG( 4, 15) = 0.270627E+01 + PKER_SACCRG( 4, 16) = 0.305559E+01 + PKER_SACCRG( 4, 17) = 0.335340E+01 + PKER_SACCRG( 4, 18) = 0.361392E+01 + PKER_SACCRG( 4, 19) = 0.384970E+01 + PKER_SACCRG( 4, 20) = 0.405246E+01 + PKER_SACCRG( 4, 21) = 0.425002E+01 + PKER_SACCRG( 4, 22) = 0.442724E+01 + PKER_SACCRG( 4, 23) = 0.455616E+01 + PKER_SACCRG( 4, 24) = 0.469337E+01 + PKER_SACCRG( 4, 25) = 0.478122E+01 + PKER_SACCRG( 4, 26) = 0.485452E+01 + PKER_SACCRG( 4, 27) = 0.491813E+01 + PKER_SACCRG( 4, 28) = 0.494855E+01 + PKER_SACCRG( 4, 29) = 0.498058E+01 + PKER_SACCRG( 4, 30) = 0.501450E+01 + PKER_SACCRG( 4, 31) = 0.503365E+01 + PKER_SACCRG( 4, 32) = 0.504542E+01 + PKER_SACCRG( 4, 33) = 0.505475E+01 + PKER_SACCRG( 4, 34) = 0.505631E+01 + PKER_SACCRG( 4, 35) = 0.506399E+01 + PKER_SACCRG( 4, 36) = 0.508029E+01 + PKER_SACCRG( 4, 37) = 0.000000E+00 + PKER_SACCRG( 4, 38) = 0.000000E+00 + PKER_SACCRG( 4, 39) = 0.000000E+00 + PKER_SACCRG( 4, 40) = 0.000000E+00 + PKER_SACCRG( 5, 1) = 0.885989E-02 + PKER_SACCRG( 5, 2) = 0.975839E-02 + PKER_SACCRG( 5, 3) = 0.132035E-01 + PKER_SACCRG( 5, 4) = 0.139558E-01 + PKER_SACCRG( 5, 5) = 0.200916E-01 + PKER_SACCRG( 5, 6) = 0.296110E-01 + PKER_SACCRG( 5, 7) = 0.519536E-01 + PKER_SACCRG( 5, 8) = 0.940172E-01 + PKER_SACCRG( 5, 9) = 0.173205E+00 + PKER_SACCRG( 5, 10) = 0.310322E+00 + PKER_SACCRG( 5, 11) = 0.520780E+00 + PKER_SACCRG( 5, 12) = 0.806566E+00 + PKER_SACCRG( 5, 13) = 0.115020E+01 + PKER_SACCRG( 5, 14) = 0.151872E+01 + PKER_SACCRG( 5, 15) = 0.187497E+01 + PKER_SACCRG( 5, 16) = 0.219377E+01 + PKER_SACCRG( 5, 17) = 0.246641E+01 + PKER_SACCRG( 5, 18) = 0.270162E+01 + PKER_SACCRG( 5, 19) = 0.291200E+01 + PKER_SACCRG( 5, 20) = 0.309558E+01 + PKER_SACCRG( 5, 21) = 0.327751E+01 + PKER_SACCRG( 5, 22) = 0.344551E+01 + PKER_SACCRG( 5, 23) = 0.357190E+01 + PKER_SACCRG( 5, 24) = 0.370734E+01 + PKER_SACCRG( 5, 25) = 0.379614E+01 + PKER_SACCRG( 5, 26) = 0.387059E+01 + PKER_SACCRG( 5, 27) = 0.393531E+01 + PKER_SACCRG( 5, 28) = 0.396669E+01 + PKER_SACCRG( 5, 29) = 0.399944E+01 + PKER_SACCRG( 5, 30) = 0.403397E+01 + PKER_SACCRG( 5, 31) = 0.405353E+01 + PKER_SACCRG( 5, 32) = 0.406555E+01 + PKER_SACCRG( 5, 33) = 0.407508E+01 + PKER_SACCRG( 5, 34) = 0.407671E+01 + PKER_SACCRG( 5, 35) = 0.408453E+01 + PKER_SACCRG( 5, 36) = 0.410107E+01 + PKER_SACCRG( 5, 37) = 0.000000E+00 + PKER_SACCRG( 5, 38) = 0.000000E+00 + PKER_SACCRG( 5, 39) = 0.000000E+00 + PKER_SACCRG( 5, 40) = 0.000000E+00 + PKER_SACCRG( 6, 1) = 0.939278E-02 + PKER_SACCRG( 6, 2) = 0.770370E-02 + PKER_SACCRG( 6, 3) = 0.844219E-02 + PKER_SACCRG( 6, 4) = 0.113902E-01 + PKER_SACCRG( 6, 5) = 0.120225E-01 + PKER_SACCRG( 6, 6) = 0.172828E-01 + PKER_SACCRG( 6, 7) = 0.254190E-01 + PKER_SACCRG( 6, 8) = 0.444876E-01 + PKER_SACCRG( 6, 9) = 0.802697E-01 + PKER_SACCRG( 6, 10) = 0.147308E+00 + PKER_SACCRG( 6, 11) = 0.262153E+00 + PKER_SACCRG( 6, 12) = 0.437891E+00 + PKER_SACCRG( 6, 13) = 0.673319E+00 + PKER_SACCRG( 6, 14) = 0.951922E+00 + PKER_SACCRG( 6, 15) = 0.124486E+01 + PKER_SACCRG( 6, 16) = 0.152378E+01 + PKER_SACCRG( 6, 17) = 0.176859E+01 + PKER_SACCRG( 6, 18) = 0.197911E+01 + PKER_SACCRG( 6, 19) = 0.216406E+01 + PKER_SACCRG( 6, 20) = 0.232602E+01 + PKER_SACCRG( 6, 21) = 0.248802E+01 + PKER_SACCRG( 6, 22) = 0.264189E+01 + PKER_SACCRG( 6, 23) = 0.276205E+01 + PKER_SACCRG( 6, 24) = 0.289262E+01 + PKER_SACCRG( 6, 25) = 0.298091E+01 + PKER_SACCRG( 6, 26) = 0.305566E+01 + PKER_SACCRG( 6, 27) = 0.312099E+01 + PKER_SACCRG( 6, 28) = 0.315321E+01 + PKER_SACCRG( 6, 29) = 0.318651E+01 + PKER_SACCRG( 6, 30) = 0.322151E+01 + PKER_SACCRG( 6, 31) = 0.324141E+01 + PKER_SACCRG( 6, 32) = 0.325366E+01 + PKER_SACCRG( 6, 33) = 0.326335E+01 + PKER_SACCRG( 6, 34) = 0.326504E+01 + PKER_SACCRG( 6, 35) = 0.327297E+01 + PKER_SACCRG( 6, 36) = 0.328972E+01 + PKER_SACCRG( 6, 37) = 0.000000E+00 + PKER_SACCRG( 6, 38) = 0.000000E+00 + PKER_SACCRG( 6, 39) = 0.000000E+00 + PKER_SACCRG( 6, 40) = 0.000000E+00 + PKER_SACCRG( 7, 1) = 0.197193E-02 + PKER_SACCRG( 7, 2) = 0.840926E-02 + PKER_SACCRG( 7, 3) = 0.684203E-02 + PKER_SACCRG( 7, 4) = 0.744934E-02 + PKER_SACCRG( 7, 5) = 0.100142E-01 + PKER_SACCRG( 7, 6) = 0.105435E-01 + PKER_SACCRG( 7, 7) = 0.151114E-01 + PKER_SACCRG( 7, 8) = 0.221799E-01 + PKER_SACCRG( 7, 9) = 0.387273E-01 + PKER_SACCRG( 7, 10) = 0.696342E-01 + PKER_SACCRG( 7, 11) = 0.126786E+00 + PKER_SACCRG( 7, 12) = 0.224173E+00 + PKER_SACCRG( 7, 13) = 0.371284E+00 + PKER_SACCRG( 7, 14) = 0.564401E+00 + PKER_SACCRG( 7, 15) = 0.787177E+00 + PKER_SACCRG( 7, 16) = 0.101687E+01 + PKER_SACCRG( 7, 17) = 0.122807E+01 + PKER_SACCRG( 7, 18) = 0.141258E+01 + PKER_SACCRG( 7, 19) = 0.157270E+01 + PKER_SACCRG( 7, 20) = 0.171283E+01 + PKER_SACCRG( 7, 21) = 0.185341E+01 + PKER_SACCRG( 7, 22) = 0.199032E+01 + PKER_SACCRG( 7, 23) = 0.210129E+01 + PKER_SACCRG( 7, 24) = 0.222356E+01 + PKER_SACCRG( 7, 25) = 0.230903E+01 + PKER_SACCRG( 7, 26) = 0.238240E+01 + PKER_SACCRG( 7, 27) = 0.244719E+01 + PKER_SACCRG( 7, 28) = 0.247983E+01 + PKER_SACCRG( 7, 29) = 0.251337E+01 + PKER_SACCRG( 7, 30) = 0.254858E+01 + PKER_SACCRG( 7, 31) = 0.256871E+01 + PKER_SACCRG( 7, 32) = 0.258114E+01 + PKER_SACCRG( 7, 33) = 0.259094E+01 + PKER_SACCRG( 7, 34) = 0.259270E+01 + PKER_SACCRG( 7, 35) = 0.260070E+01 + PKER_SACCRG( 7, 36) = 0.261756E+01 + PKER_SACCRG( 7, 37) = 0.000000E+00 + PKER_SACCRG( 7, 38) = 0.000000E+00 + PKER_SACCRG( 7, 39) = 0.000000E+00 + PKER_SACCRG( 7, 40) = 0.000000E+00 + PKER_SACCRG( 8, 1) = 0.287028E-02 + PKER_SACCRG( 8, 2) = 0.183962E-02 + PKER_SACCRG( 8, 3) = 0.778156E-02 + PKER_SACCRG( 8, 4) = 0.626956E-02 + PKER_SACCRG( 8, 5) = 0.676623E-02 + PKER_SACCRG( 8, 6) = 0.546166E-02 + PKER_SACCRG( 8, 7) = 0.943103E-02 + PKER_SACCRG( 8, 8) = 0.135380E-01 + PKER_SACCRG( 8, 9) = 0.198532E-01 + PKER_SACCRG( 8, 10) = 0.345712E-01 + PKER_SACCRG( 8, 11) = 0.614306E-01 + PKER_SACCRG( 8, 12) = 0.111431E+00 + PKER_SACCRG( 8, 13) = 0.195294E+00 + PKER_SACCRG( 8, 14) = 0.318747E+00 + PKER_SACCRG( 8, 15) = 0.475607E+00 + PKER_SACCRG( 8, 16) = 0.653793E+00 + PKER_SACCRG( 8, 17) = 0.827434E+00 + PKER_SACCRG( 8, 18) = 0.984457E+00 + PKER_SACCRG( 8, 19) = 0.111823E+01 + PKER_SACCRG( 8, 20) = 0.123445E+01 + PKER_SACCRG( 8, 21) = 0.135038E+01 + PKER_SACCRG( 8, 22) = 0.146703E+01 + PKER_SACCRG( 8, 23) = 0.156617E+01 + PKER_SACCRG( 8, 24) = 0.167765E+01 + PKER_SACCRG( 8, 25) = 0.175863E+01 + PKER_SACCRG( 8, 26) = 0.182918E+01 + PKER_SACCRG( 8, 27) = 0.189212E+01 + PKER_SACCRG( 8, 28) = 0.192450E+01 + PKER_SACCRG( 8, 29) = 0.195757E+01 + PKER_SACCRG( 8, 30) = 0.199227E+01 + PKER_SACCRG( 8, 31) = 0.201226E+01 + PKER_SACCRG( 8, 32) = 0.202464E+01 + PKER_SACCRG( 8, 33) = 0.203441E+01 + PKER_SACCRG( 8, 34) = 0.203619E+01 + PKER_SACCRG( 8, 35) = 0.204416E+01 + PKER_SACCRG( 8, 36) = 0.206100E+01 + PKER_SACCRG( 8, 37) = 0.000000E+00 + PKER_SACCRG( 8, 38) = 0.000000E+00 + PKER_SACCRG( 8, 39) = 0.000000E+00 + PKER_SACCRG( 8, 40) = 0.000000E+00 + PKER_SACCRG( 9, 1) = 0.227973E-03 + PKER_SACCRG( 9, 2) = 0.282707E-02 + PKER_SACCRG( 9, 3) = 0.180146E-02 + PKER_SACCRG( 9, 4) = 0.195291E-02 + PKER_SACCRG( 9, 5) = 0.601462E-02 + PKER_SACCRG( 9, 6) = 0.639847E-02 + PKER_SACCRG( 9, 7) = 0.503409E-02 + PKER_SACCRG( 9, 8) = 0.874760E-02 + PKER_SACCRG( 9, 9) = 0.125924E-01 + PKER_SACCRG( 9, 10) = 0.187098E-01 + PKER_SACCRG( 9, 11) = 0.315437E-01 + PKER_SACCRG( 9, 12) = 0.563136E-01 + PKER_SACCRG( 9, 13) = 0.100517E+00 + PKER_SACCRG( 9, 14) = 0.173643E+00 + PKER_SACCRG( 9, 15) = 0.275822E+00 + PKER_SACCRG( 9, 16) = 0.405835E+00 + PKER_SACCRG( 9, 17) = 0.540959E+00 + PKER_SACCRG( 9, 18) = 0.670349E+00 + PKER_SACCRG( 9, 19) = 0.779801E+00 + PKER_SACCRG( 9, 20) = 0.873659E+00 + PKER_SACCRG( 9, 21) = 0.964651E+00 + PKER_SACCRG( 9, 22) = 0.105792E+01 + PKER_SACCRG( 9, 23) = 0.114069E+01 + PKER_SACCRG( 9, 24) = 0.123707E+01 + PKER_SACCRG( 9, 25) = 0.131072E+01 + PKER_SACCRG( 9, 26) = 0.137674E+01 + PKER_SACCRG( 9, 27) = 0.143675E+01 + PKER_SACCRG( 9, 28) = 0.146856E+01 + PKER_SACCRG( 9, 29) = 0.150083E+01 + PKER_SACCRG( 9, 30) = 0.153465E+01 + PKER_SACCRG( 9, 31) = 0.155430E+01 + PKER_SACCRG( 9, 32) = 0.156652E+01 + PKER_SACCRG( 9, 33) = 0.157614E+01 + PKER_SACCRG( 9, 34) = 0.157797E+01 + PKER_SACCRG( 9, 35) = 0.158578E+01 + PKER_SACCRG( 9, 36) = 0.160221E+01 + PKER_SACCRG( 9, 37) = 0.000000E+00 + PKER_SACCRG( 9, 38) = 0.000000E+00 + PKER_SACCRG( 9, 39) = 0.000000E+00 + PKER_SACCRG( 9, 40) = 0.000000E+00 + PKER_SACCRG( 10, 1) = 0.836884E-05 + PKER_SACCRG( 10, 2) = 0.241023E-03 + PKER_SACCRG( 10, 3) = 0.298555E-02 + PKER_SACCRG( 10, 4) = 0.189539E-02 + PKER_SACCRG( 10, 5) = 0.204013E-02 + PKER_SACCRG( 10, 6) = 0.618434E-02 + PKER_SACCRG( 10, 7) = 0.624911E-02 + PKER_SACCRG( 10, 8) = 0.493580E-02 + PKER_SACCRG( 10, 9) = 0.859150E-02 + PKER_SACCRG( 10, 10) = 0.132122E-01 + PKER_SACCRG( 10, 11) = 0.178104E-01 + PKER_SACCRG( 10, 12) = 0.313842E-01 + PKER_SACCRG( 10, 13) = 0.543137E-01 + PKER_SACCRG( 10, 14) = 0.957524E-01 + PKER_SACCRG( 10, 15) = 0.158366E+00 + PKER_SACCRG( 10, 16) = 0.250247E+00 + PKER_SACCRG( 10, 17) = 0.351339E+00 + PKER_SACCRG( 10, 18) = 0.455229E+00 + PKER_SACCRG( 10, 19) = 0.541376E+00 + PKER_SACCRG( 10, 20) = 0.613508E+00 + PKER_SACCRG( 10, 21) = 0.679512E+00 + PKER_SACCRG( 10, 22) = 0.748499E+00 + PKER_SACCRG( 10, 23) = 0.812917E+00 + PKER_SACCRG( 10, 24) = 0.891097E+00 + PKER_SACCRG( 10, 25) = 0.953782E+00 + PKER_SACCRG( 10, 26) = 0.101178E+01 + PKER_SACCRG( 10, 27) = 0.106610E+01 + PKER_SACCRG( 10, 28) = 0.109586E+01 + PKER_SACCRG( 10, 29) = 0.112638E+01 + PKER_SACCRG( 10, 30) = 0.115867E+01 + PKER_SACCRG( 10, 31) = 0.117769E+01 + PKER_SACCRG( 10, 32) = 0.118959E+01 + PKER_SACCRG( 10, 33) = 0.119896E+01 + PKER_SACCRG( 10, 34) = 0.120079E+01 + PKER_SACCRG( 10, 35) = 0.120838E+01 + PKER_SACCRG( 10, 36) = 0.122431E+01 + PKER_SACCRG( 10, 37) = 0.000000E+00 + PKER_SACCRG( 10, 38) = 0.000000E+00 + PKER_SACCRG( 10, 39) = 0.000000E+00 + PKER_SACCRG( 10, 40) = 0.000000E+00 + PKER_SACCRG( 11, 1) = 0.000000E+00 + PKER_SACCRG( 11, 2) = 0.984489E-05 + PKER_SACCRG( 11, 3) = 0.280498E-03 + PKER_SACCRG( 11, 4) = 0.349195E-02 + PKER_SACCRG( 11, 5) = 0.223140E-02 + PKER_SACCRG( 11, 6) = 0.240058E-02 + PKER_SACCRG( 11, 7) = 0.683543E-02 + PKER_SACCRG( 11, 8) = 0.692007E-02 + PKER_SACCRG( 11, 9) = 0.514199E-02 + PKER_SACCRG( 11, 10) = 0.114977E-01 + PKER_SACCRG( 11, 11) = 0.109728E-01 + PKER_SACCRG( 11, 12) = 0.211442E-01 + PKER_SACCRG( 11, 13) = 0.346586E-01 + PKER_SACCRG( 11, 14) = 0.591042E-01 + PKER_SACCRG( 11, 15) = 0.961841E-01 + PKER_SACCRG( 11, 16) = 0.162562E+00 + PKER_SACCRG( 11, 17) = 0.237843E+00 + PKER_SACCRG( 11, 18) = 0.321714E+00 + PKER_SACCRG( 11, 19) = 0.387542E+00 + PKER_SACCRG( 11, 20) = 0.440755E+00 + PKER_SACCRG( 11, 21) = 0.483048E+00 + PKER_SACCRG( 11, 22) = 0.527421E+00 + PKER_SACCRG( 11, 23) = 0.571319E+00 + PKER_SACCRG( 11, 24) = 0.628617E+00 + PKER_SACCRG( 11, 25) = 0.677728E+00 + PKER_SACCRG( 11, 26) = 0.725464E+00 + PKER_SACCRG( 11, 27) = 0.771793E+00 + PKER_SACCRG( 11, 28) = 0.798056E+00 + PKER_SACCRG( 11, 29) = 0.825035E+00 + PKER_SACCRG( 11, 30) = 0.853830E+00 + PKER_SACCRG( 11, 31) = 0.871001E+00 + PKER_SACCRG( 11, 32) = 0.881834E+00 + PKER_SACCRG( 11, 33) = 0.890401E+00 + PKER_SACCRG( 11, 34) = 0.892044E+00 + PKER_SACCRG( 11, 35) = 0.899026E+00 + PKER_SACCRG( 11, 36) = 0.913978E+00 + PKER_SACCRG( 11, 37) = 0.000000E+00 + PKER_SACCRG( 11, 38) = 0.000000E+00 + PKER_SACCRG( 11, 39) = 0.000000E+00 + PKER_SACCRG( 11, 40) = 0.000000E+00 + PKER_SACCRG( 12, 1) = 0.000000E+00 + PKER_SACCRG( 12, 2) = 0.000000E+00 + PKER_SACCRG( 12, 3) = 0.131525E-04 + PKER_SACCRG( 12, 4) = 0.376734E-03 + PKER_SACCRG( 12, 5) = 0.481352E-02 + PKER_SACCRG( 12, 6) = 0.318057E-02 + PKER_SACCRG( 12, 7) = 0.345470E-02 + PKER_SACCRG( 12, 8) = 0.420666E-02 + PKER_SACCRG( 12, 9) = 0.383001E-02 + PKER_SACCRG( 12, 10) = 0.110848E-01 + PKER_SACCRG( 12, 11) = 0.934829E-02 + PKER_SACCRG( 12, 12) = 0.183949E-01 + PKER_SACCRG( 12, 13) = 0.295675E-01 + PKER_SACCRG( 12, 14) = 0.470543E-01 + PKER_SACCRG( 12, 15) = 0.695886E-01 + PKER_SACCRG( 12, 16) = 0.122527E+00 + PKER_SACCRG( 12, 17) = 0.181754E+00 + PKER_SACCRG( 12, 18) = 0.253508E+00 + PKER_SACCRG( 12, 19) = 0.304324E+00 + PKER_SACCRG( 12, 20) = 0.342444E+00 + PKER_SACCRG( 12, 21) = 0.363399E+00 + PKER_SACCRG( 12, 22) = 0.384221E+00 + PKER_SACCRG( 12, 23) = 0.406941E+00 + PKER_SACCRG( 12, 24) = 0.441951E+00 + PKER_SACCRG( 12, 25) = 0.474892E+00 + PKER_SACCRG( 12, 26) = 0.509393E+00 + PKER_SACCRG( 12, 27) = 0.545053E+00 + PKER_SACCRG( 12, 28) = 0.566107E+00 + PKER_SACCRG( 12, 29) = 0.588592E+00 + PKER_SACCRG( 12, 30) = 0.613355E+00 + PKER_SACCRG( 12, 31) = 0.628544E+00 + PKER_SACCRG( 12, 32) = 0.638273E+00 + PKER_SACCRG( 12, 33) = 0.646003E+00 + PKER_SACCRG( 12, 34) = 0.647602E+00 + PKER_SACCRG( 12, 35) = 0.653888E+00 + PKER_SACCRG( 12, 36) = 0.667119E+00 + PKER_SACCRG( 12, 37) = 0.000000E+00 + PKER_SACCRG( 12, 38) = 0.000000E+00 + PKER_SACCRG( 12, 39) = 0.000000E+00 + PKER_SACCRG( 12, 40) = 0.000000E+00 + PKER_SACCRG( 13, 1) = 0.000000E+00 + PKER_SACCRG( 13, 2) = 0.000000E+00 + PKER_SACCRG( 13, 3) = 0.715754E-07 + PKER_SACCRG( 13, 4) = 0.213213E-04 + PKER_SACCRG( 13, 5) = 0.638125E-03 + PKER_SACCRG( 13, 6) = 0.842445E-03 + PKER_SACCRG( 13, 7) = 0.719221E-02 + PKER_SACCRG( 13, 8) = 0.932081E-02 + PKER_SACCRG( 13, 9) = 0.442957E-02 + PKER_SACCRG( 13, 10) = 0.154869E-01 + PKER_SACCRG( 13, 11) = 0.137909E-01 + PKER_SACCRG( 13, 12) = 0.248513E-01 + PKER_SACCRG( 13, 13) = 0.394496E-01 + PKER_SACCRG( 13, 14) = 0.513911E-01 + PKER_SACCRG( 13, 15) = 0.661668E-01 + PKER_SACCRG( 13, 16) = 0.115529E+00 + PKER_SACCRG( 13, 17) = 0.166381E+00 + PKER_SACCRG( 13, 18) = 0.234091E+00 + PKER_SACCRG( 13, 19) = 0.276281E+00 + PKER_SACCRG( 13, 20) = 0.304686E+00 + PKER_SACCRG( 13, 21) = 0.307989E+00 + PKER_SACCRG( 13, 22) = 0.307891E+00 + PKER_SACCRG( 13, 23) = 0.310412E+00 + PKER_SACCRG( 13, 24) = 0.323293E+00 + PKER_SACCRG( 13, 25) = 0.338766E+00 + PKER_SACCRG( 13, 26) = 0.358236E+00 + PKER_SACCRG( 13, 27) = 0.380952E+00 + PKER_SACCRG( 13, 28) = 0.395254E+00 + PKER_SACCRG( 13, 29) = 0.411396E+00 + PKER_SACCRG( 13, 30) = 0.429868E+00 + PKER_SACCRG( 13, 31) = 0.441480E+00 + PKER_SACCRG( 13, 32) = 0.449014E+00 + PKER_SACCRG( 13, 33) = 0.455042E+00 + PKER_SACCRG( 13, 34) = 0.456301E+00 + PKER_SACCRG( 13, 35) = 0.461238E+00 + PKER_SACCRG( 13, 36) = 0.471725E+00 + PKER_SACCRG( 13, 37) = 0.000000E+00 + PKER_SACCRG( 13, 38) = 0.000000E+00 + PKER_SACCRG( 13, 39) = 0.000000E+00 + PKER_SACCRG( 13, 40) = 0.000000E+00 + PKER_SACCRG( 14, 1) = 0.000000E+00 + PKER_SACCRG( 14, 2) = 0.000000E+00 + PKER_SACCRG( 14, 3) = 0.000000E+00 + PKER_SACCRG( 14, 4) = 0.381946E-06 + PKER_SACCRG( 14, 5) = 0.473573E-04 + PKER_SACCRG( 14, 6) = 0.165120E-02 + PKER_SACCRG( 14, 7) = 0.389733E-02 + PKER_SACCRG( 14, 8) = 0.389488E-01 + PKER_SACCRG( 14, 9) = 0.960356E-02 + PKER_SACCRG( 14, 10) = 0.289006E-01 + PKER_SACCRG( 14, 11) = 0.219911E-01 + PKER_SACCRG( 14, 12) = 0.526837E-01 + PKER_SACCRG( 14, 13) = 0.654887E-01 + PKER_SACCRG( 14, 14) = 0.683643E-01 + PKER_SACCRG( 14, 15) = 0.802145E-01 + PKER_SACCRG( 14, 16) = 0.134652E+00 + PKER_SACCRG( 14, 17) = 0.180678E+00 + PKER_SACCRG( 14, 18) = 0.248857E+00 + PKER_SACCRG( 14, 19) = 0.287693E+00 + PKER_SACCRG( 14, 20) = 0.311977E+00 + PKER_SACCRG( 14, 21) = 0.302501E+00 + PKER_SACCRG( 14, 22) = 0.285666E+00 + PKER_SACCRG( 14, 23) = 0.270663E+00 + PKER_SACCRG( 14, 24) = 0.263508E+00 + PKER_SACCRG( 14, 25) = 0.261858E+00 + PKER_SACCRG( 14, 26) = 0.265704E+00 + PKER_SACCRG( 14, 27) = 0.274260E+00 + PKER_SACCRG( 14, 28) = 0.280343E+00 + PKER_SACCRG( 14, 29) = 0.288745E+00 + PKER_SACCRG( 14, 30) = 0.299555E+00 + PKER_SACCRG( 14, 31) = 0.306742E+00 + PKER_SACCRG( 14, 32) = 0.311519E+00 + PKER_SACCRG( 14, 33) = 0.315446E+00 + PKER_SACCRG( 14, 34) = 0.316143E+00 + PKER_SACCRG( 14, 35) = 0.319453E+00 + PKER_SACCRG( 14, 36) = 0.326846E+00 + PKER_SACCRG( 14, 37) = 0.000000E+00 + PKER_SACCRG( 14, 38) = 0.000000E+00 + PKER_SACCRG( 14, 39) = 0.000000E+00 + PKER_SACCRG( 14, 40) = 0.000000E+00 + PKER_SACCRG( 15, 1) = 0.000000E+00 + PKER_SACCRG( 15, 2) = 0.000000E+00 + PKER_SACCRG( 15, 3) = 0.000000E+00 + PKER_SACCRG( 15, 4) = 0.000000E+00 + PKER_SACCRG( 15, 5) = 0.156840E-05 + PKER_SACCRG( 15, 6) = 0.190758E-03 + PKER_SACCRG( 15, 7) = 0.213304E-01 + PKER_SACCRG( 15, 8) = 0.441574E-01 + PKER_SACCRG( 15, 9) = 0.400468E-01 + PKER_SACCRG( 15, 10) = 0.704682E-01 + PKER_SACCRG( 15, 11) = 0.469944E-01 + PKER_SACCRG( 15, 12) = 0.981183E-01 + PKER_SACCRG( 15, 13) = 0.100527E+00 + PKER_SACCRG( 15, 14) = 0.109911E+00 + PKER_SACCRG( 15, 15) = 0.122766E+00 + PKER_SACCRG( 15, 16) = 0.166781E+00 + PKER_SACCRG( 15, 17) = 0.213821E+00 + PKER_SACCRG( 15, 18) = 0.285192E+00 + PKER_SACCRG( 15, 19) = 0.323590E+00 + PKER_SACCRG( 15, 20) = 0.348069E+00 + PKER_SACCRG( 15, 21) = 0.330921E+00 + PKER_SACCRG( 15, 22) = 0.302486E+00 + PKER_SACCRG( 15, 23) = 0.274134E+00 + PKER_SACCRG( 15, 24) = 0.250992E+00 + PKER_SACCRG( 15, 25) = 0.234616E+00 + PKER_SACCRG( 15, 26) = 0.224211E+00 + PKER_SACCRG( 15, 27) = 0.219091E+00 + PKER_SACCRG( 15, 28) = 0.216667E+00 + PKER_SACCRG( 15, 29) = 0.216954E+00 + PKER_SACCRG( 15, 30) = 0.219635E+00 + PKER_SACCRG( 15, 31) = 0.221903E+00 + PKER_SACCRG( 15, 32) = 0.223652E+00 + PKER_SACCRG( 15, 33) = 0.225260E+00 + PKER_SACCRG( 15, 34) = 0.225539E+00 + PKER_SACCRG( 15, 35) = 0.227017E+00 + PKER_SACCRG( 15, 36) = 0.230425E+00 + PKER_SACCRG( 15, 37) = 0.000000E+00 + PKER_SACCRG( 15, 38) = 0.000000E+00 + PKER_SACCRG( 15, 39) = 0.000000E+00 + PKER_SACCRG( 15, 40) = 0.000000E+00 + PKER_SACCRG( 16, 1) = 0.000000E+00 + PKER_SACCRG( 16, 2) = 0.000000E+00 + PKER_SACCRG( 16, 3) = 0.000000E+00 + PKER_SACCRG( 16, 4) = 0.000000E+00 + PKER_SACCRG( 16, 5) = 0.000000E+00 + PKER_SACCRG( 16, 6) = 0.119071E-04 + PKER_SACCRG( 16, 7) = 0.989929E-02 + PKER_SACCRG( 16, 8) = 0.528890E+00 + PKER_SACCRG( 16, 9) = 0.450696E-01 + PKER_SACCRG( 16, 10) = 0.655297E-01 + PKER_SACCRG( 16, 11) = 0.132187E+00 + PKER_SACCRG( 16, 12) = 0.215348E+00 + PKER_SACCRG( 16, 13) = 0.167588E+00 + PKER_SACCRG( 16, 14) = 0.216205E+00 + PKER_SACCRG( 16, 15) = 0.162196E+00 + PKER_SACCRG( 16, 16) = 0.244005E+00 + PKER_SACCRG( 16, 17) = 0.269648E+00 + PKER_SACCRG( 16, 18) = 0.340900E+00 + PKER_SACCRG( 16, 19) = 0.372264E+00 + PKER_SACCRG( 16, 20) = 0.398617E+00 + PKER_SACCRG( 16, 21) = 0.377733E+00 + PKER_SACCRG( 16, 22) = 0.342874E+00 + PKER_SACCRG( 16, 23) = 0.305984E+00 + PKER_SACCRG( 16, 24) = 0.271888E+00 + PKER_SACCRG( 16, 25) = 0.244614E+00 + PKER_SACCRG( 16, 26) = 0.222952E+00 + PKER_SACCRG( 16, 27) = 0.206393E+00 + PKER_SACCRG( 16, 28) = 0.196281E+00 + PKER_SACCRG( 16, 29) = 0.189043E+00 + PKER_SACCRG( 16, 30) = 0.183996E+00 + PKER_SACCRG( 16, 31) = 0.181421E+00 + PKER_SACCRG( 16, 32) = 0.180072E+00 + PKER_SACCRG( 16, 33) = 0.179344E+00 + PKER_SACCRG( 16, 34) = 0.178990E+00 + PKER_SACCRG( 16, 35) = 0.178753E+00 + PKER_SACCRG( 16, 36) = 0.178876E+00 + PKER_SACCRG( 16, 37) = 0.000000E+00 + PKER_SACCRG( 16, 38) = 0.000000E+00 + PKER_SACCRG( 16, 39) = 0.000000E+00 + PKER_SACCRG( 16, 40) = 0.000000E+00 + PKER_SACCRG( 17, 1) = 0.000000E+00 + PKER_SACCRG( 17, 2) = 0.000000E+00 + PKER_SACCRG( 17, 3) = 0.000000E+00 + PKER_SACCRG( 17, 4) = 0.000000E+00 + PKER_SACCRG( 17, 5) = 0.000000E+00 + PKER_SACCRG( 17, 6) = 0.284464E-06 + PKER_SACCRG( 17, 7) = 0.376463E-02 + PKER_SACCRG( 17, 8) = 0.586668E+00 + PKER_SACCRG( 17, 9) = 0.500034E-01 + PKER_SACCRG( 17, 10) = 0.220639E+00 + PKER_SACCRG( 17, 11) = 0.146258E+00 + PKER_SACCRG( 17, 12) = 0.237708E+00 + PKER_SACCRG( 17, 13) = 0.306782E+00 + PKER_SACCRG( 17, 14) = 0.354063E+00 + PKER_SACCRG( 17, 15) = 0.280860E+00 + PKER_SACCRG( 17, 16) = 0.308089E+00 + PKER_SACCRG( 17, 17) = 0.339505E+00 + PKER_SACCRG( 17, 18) = 0.414880E+00 + PKER_SACCRG( 17, 19) = 0.430629E+00 + PKER_SACCRG( 17, 20) = 0.452781E+00 + PKER_SACCRG( 17, 21) = 0.429564E+00 + PKER_SACCRG( 17, 22) = 0.392080E+00 + PKER_SACCRG( 17, 23) = 0.351048E+00 + PKER_SACCRG( 17, 24) = 0.310955E+00 + PKER_SACCRG( 17, 25) = 0.277207E+00 + PKER_SACCRG( 17, 26) = 0.248275E+00 + PKER_SACCRG( 17, 27) = 0.223790E+00 + PKER_SACCRG( 17, 28) = 0.208062E+00 + PKER_SACCRG( 17, 29) = 0.195017E+00 + PKER_SACCRG( 17, 30) = 0.183624E+00 + PKER_SACCRG( 17, 31) = 0.176886E+00 + PKER_SACCRG( 17, 32) = 0.172790E+00 + PKER_SACCRG( 17, 33) = 0.169882E+00 + PKER_SACCRG( 17, 34) = 0.169010E+00 + PKER_SACCRG( 17, 35) = 0.166994E+00 + PKER_SACCRG( 17, 36) = 0.163299E+00 + PKER_SACCRG( 17, 37) = 0.000000E+00 + PKER_SACCRG( 17, 38) = 0.000000E+00 + PKER_SACCRG( 17, 39) = 0.000000E+00 + PKER_SACCRG( 17, 40) = 0.000000E+00 + PKER_SACCRG( 18, 1) = 0.000000E+00 + PKER_SACCRG( 18, 2) = 0.000000E+00 + PKER_SACCRG( 18, 3) = 0.000000E+00 + PKER_SACCRG( 18, 4) = 0.000000E+00 + PKER_SACCRG( 18, 5) = 0.000000E+00 + PKER_SACCRG( 18, 6) = 0.000000E+00 + PKER_SACCRG( 18, 7) = 0.105382E-02 + PKER_SACCRG( 18, 8) = 0.635938E+00 + PKER_SACCRG( 18, 9) = 0.581236E+00 + PKER_SACCRG( 18, 10) = 0.175918E+00 + PKER_SACCRG( 18, 11) = 0.158333E+00 + PKER_SACCRG( 18, 12) = 0.645276E+00 + PKER_SACCRG( 18, 13) = 0.647795E+00 + PKER_SACCRG( 18, 14) = 0.383206E+00 + PKER_SACCRG( 18, 15) = 0.415829E+00 + PKER_SACCRG( 18, 16) = 0.392871E+00 + PKER_SACCRG( 18, 17) = 0.447385E+00 + PKER_SACCRG( 18, 18) = 0.473465E+00 + PKER_SACCRG( 18, 19) = 0.487585E+00 + PKER_SACCRG( 18, 20) = 0.505825E+00 + PKER_SACCRG( 18, 21) = 0.478975E+00 + PKER_SACCRG( 18, 22) = 0.440594E+00 + PKER_SACCRG( 18, 23) = 0.398291E+00 + PKER_SACCRG( 18, 24) = 0.355953E+00 + PKER_SACCRG( 18, 25) = 0.319332E+00 + PKER_SACCRG( 18, 26) = 0.286857E+00 + PKER_SACCRG( 18, 27) = 0.258053E+00 + PKER_SACCRG( 18, 28) = 0.239021E+00 + PKER_SACCRG( 18, 29) = 0.222386E+00 + PKER_SACCRG( 18, 30) = 0.206903E+00 + PKER_SACCRG( 18, 31) = 0.197361E+00 + PKER_SACCRG( 18, 32) = 0.191347E+00 + PKER_SACCRG( 18, 33) = 0.186901E+00 + PKER_SACCRG( 18, 34) = 0.185599E+00 + PKER_SACCRG( 18, 35) = 0.182341E+00 + PKER_SACCRG( 18, 36) = 0.176179E+00 + PKER_SACCRG( 18, 37) = 0.000000E+00 + PKER_SACCRG( 18, 38) = 0.000000E+00 + PKER_SACCRG( 18, 39) = 0.000000E+00 + PKER_SACCRG( 18, 40) = 0.000000E+00 + PKER_SACCRG( 19, 1) = 0.000000E+00 + PKER_SACCRG( 19, 2) = 0.000000E+00 + PKER_SACCRG( 19, 3) = 0.000000E+00 + PKER_SACCRG( 19, 4) = 0.000000E+00 + PKER_SACCRG( 19, 5) = 0.000000E+00 + PKER_SACCRG( 19, 6) = 0.000000E+00 + PKER_SACCRG( 19, 7) = 0.194865E-03 + PKER_SACCRG( 19, 8) = 0.676347E+00 + PKER_SACCRG( 19, 9) = 0.621969E+00 + PKER_SACCRG( 19, 10) = 0.131032E+00 + PKER_SACCRG( 19, 11) = 0.658583E+00 + PKER_SACCRG( 19, 12) = 0.685804E+00 + PKER_SACCRG( 19, 13) = 0.688335E+00 + PKER_SACCRG( 19, 14) = 0.677066E+00 + PKER_SACCRG( 19, 15) = 0.442768E+00 + PKER_SACCRG( 19, 16) = 0.511298E+00 + PKER_SACCRG( 19, 17) = 0.544390E+00 + PKER_SACCRG( 19, 18) = 0.574263E+00 + PKER_SACCRG( 19, 19) = 0.551361E+00 + PKER_SACCRG( 19, 20) = 0.554396E+00 + PKER_SACCRG( 19, 21) = 0.521768E+00 + PKER_SACCRG( 19, 22) = 0.483164E+00 + PKER_SACCRG( 19, 23) = 0.440915E+00 + PKER_SACCRG( 19, 24) = 0.398417E+00 + PKER_SACCRG( 19, 25) = 0.361201E+00 + PKER_SACCRG( 19, 26) = 0.327700E+00 + PKER_SACCRG( 19, 27) = 0.297381E+00 + PKER_SACCRG( 19, 28) = 0.276977E+00 + PKER_SACCRG( 19, 29) = 0.258775E+00 + PKER_SACCRG( 19, 30) = 0.241338E+00 + PKER_SACCRG( 19, 31) = 0.230370E+00 + PKER_SACCRG( 19, 32) = 0.223349E+00 + PKER_SACCRG( 19, 33) = 0.218072E+00 + PKER_SACCRG( 19, 34) = 0.216544E+00 + PKER_SACCRG( 19, 35) = 0.212586E+00 + PKER_SACCRG( 19, 36) = 0.204880E+00 + PKER_SACCRG( 19, 37) = 0.000000E+00 + PKER_SACCRG( 19, 38) = 0.000000E+00 + PKER_SACCRG( 19, 39) = 0.000000E+00 + PKER_SACCRG( 19, 40) = 0.000000E+00 + PKER_SACCRG( 20, 1) = 0.000000E+00 + PKER_SACCRG( 20, 2) = 0.000000E+00 + PKER_SACCRG( 20, 3) = 0.000000E+00 + PKER_SACCRG( 20, 4) = 0.000000E+00 + PKER_SACCRG( 20, 5) = 0.000000E+00 + PKER_SACCRG( 20, 6) = 0.000000E+00 + PKER_SACCRG( 20, 7) = 0.210974E-04 + PKER_SACCRG( 20, 8) = 0.709956E+00 + PKER_SACCRG( 20, 9) = 0.655815E+00 + PKER_SACCRG( 20, 10) = 0.956725E-01 + PKER_SACCRG( 20, 11) = 0.692386E+00 + PKER_SACCRG( 20, 12) = 0.719525E+00 + PKER_SACCRG( 20, 13) = 0.722068E+00 + PKER_SACCRG( 20, 14) = 0.710869E+00 + PKER_SACCRG( 20, 15) = 0.691117E+00 + PKER_SACCRG( 20, 16) = 0.690018E+00 + PKER_SACCRG( 20, 17) = 0.573065E+00 + PKER_SACCRG( 20, 18) = 0.605475E+00 + PKER_SACCRG( 20, 19) = 0.604580E+00 + PKER_SACCRG( 20, 20) = 0.595016E+00 + PKER_SACCRG( 20, 21) = 0.559020E+00 + PKER_SACCRG( 20, 22) = 0.519154E+00 + PKER_SACCRG( 20, 23) = 0.477263E+00 + PKER_SACCRG( 20, 24) = 0.435286E+00 + PKER_SACCRG( 20, 25) = 0.398364E+00 + PKER_SACCRG( 20, 26) = 0.364991E+00 + PKER_SACCRG( 20, 27) = 0.334611E+00 + PKER_SACCRG( 20, 28) = 0.313905E+00 + PKER_SACCRG( 20, 29) = 0.295342E+00 + PKER_SACCRG( 20, 30) = 0.277428E+00 + PKER_SACCRG( 20, 31) = 0.266023E+00 + PKER_SACCRG( 20, 32) = 0.258671E+00 + PKER_SACCRG( 20, 33) = 0.253118E+00 + PKER_SACCRG( 20, 34) = 0.251504E+00 + PKER_SACCRG( 20, 35) = 0.247323E+00 + PKER_SACCRG( 20, 36) = 0.239150E+00 + PKER_SACCRG( 20, 37) = 0.000000E+00 + PKER_SACCRG( 20, 38) = 0.000000E+00 + PKER_SACCRG( 20, 39) = 0.000000E+00 + PKER_SACCRG( 20, 40) = 0.000000E+00 + PKER_SACCRG( 21, 1) = 0.000000E+00 + PKER_SACCRG( 21, 2) = 0.000000E+00 + PKER_SACCRG( 21, 3) = 0.000000E+00 + PKER_SACCRG( 21, 4) = 0.000000E+00 + PKER_SACCRG( 21, 5) = 0.000000E+00 + PKER_SACCRG( 21, 6) = 0.000000E+00 + PKER_SACCRG( 21, 7) = 0.115787E-05 + PKER_SACCRG( 21, 8) = 0.737622E+00 + PKER_SACCRG( 21, 9) = 0.683641E+00 + PKER_SACCRG( 21, 10) = 0.742791E-01 + PKER_SACCRG( 21, 11) = 0.720196E+00 + PKER_SACCRG( 21, 12) = 0.747281E+00 + PKER_SACCRG( 21, 13) = 0.749836E+00 + PKER_SACCRG( 21, 14) = 0.738685E+00 + PKER_SACCRG( 21, 15) = 0.719015E+00 + PKER_SACCRG( 21, 16) = 0.717958E+00 + PKER_SACCRG( 21, 17) = 0.702249E+00 + PKER_SACCRG( 21, 18) = 0.688360E+00 + PKER_SACCRG( 21, 19) = 0.631563E+00 + PKER_SACCRG( 21, 20) = 0.632341E+00 + PKER_SACCRG( 21, 21) = 0.589665E+00 + PKER_SACCRG( 21, 22) = 0.548711E+00 + PKER_SACCRG( 21, 23) = 0.507170E+00 + PKER_SACCRG( 21, 24) = 0.465784E+00 + PKER_SACCRG( 21, 25) = 0.429322E+00 + PKER_SACCRG( 21, 26) = 0.396378E+00 + PKER_SACCRG( 21, 27) = 0.366391E+00 + PKER_SACCRG( 21, 28) = 0.345783E+00 + PKER_SACCRG( 21, 29) = 0.327346E+00 + PKER_SACCRG( 21, 30) = 0.309575E+00 + PKER_SACCRG( 21, 31) = 0.298199E+00 + PKER_SACCRG( 21, 32) = 0.290842E+00 + PKER_SACCRG( 21, 33) = 0.285284E+00 + PKER_SACCRG( 21, 34) = 0.283648E+00 + PKER_SACCRG( 21, 35) = 0.279467E+00 + PKER_SACCRG( 21, 36) = 0.271303E+00 + PKER_SACCRG( 21, 37) = 0.000000E+00 + PKER_SACCRG( 21, 38) = 0.000000E+00 + PKER_SACCRG( 21, 39) = 0.000000E+00 + PKER_SACCRG( 21, 40) = 0.000000E+00 + PKER_SACCRG( 22, 1) = 0.000000E+00 + PKER_SACCRG( 22, 2) = 0.000000E+00 + PKER_SACCRG( 22, 3) = 0.000000E+00 + PKER_SACCRG( 22, 4) = 0.000000E+00 + PKER_SACCRG( 22, 5) = 0.000000E+00 + PKER_SACCRG( 22, 6) = 0.000000E+00 + PKER_SACCRG( 22, 7) = 0.153493E-07 + PKER_SACCRG( 22, 8) = 0.760420E+00 + PKER_SACCRG( 22, 9) = 0.706545E+00 + PKER_SACCRG( 22, 10) = 0.650587E-01 + PKER_SACCRG( 22, 11) = 0.743098E+00 + PKER_SACCRG( 22, 12) = 0.770151E+00 + PKER_SACCRG( 22, 13) = 0.772714E+00 + PKER_SACCRG( 22, 14) = 0.761598E+00 + PKER_SACCRG( 22, 15) = 0.741985E+00 + PKER_SACCRG( 22, 16) = 0.740959E+00 + PKER_SACCRG( 22, 17) = 0.725323E+00 + PKER_SACCRG( 22, 18) = 0.711529E+00 + PKER_SACCRG( 22, 19) = 0.653730E+00 + PKER_SACCRG( 22, 20) = 0.655849E+00 + PKER_SACCRG( 22, 21) = 0.613326E+00 + PKER_SACCRG( 22, 22) = 0.573001E+00 + PKER_SACCRG( 22, 23) = 0.531612E+00 + PKER_SACCRG( 22, 24) = 0.490679E+00 + PKER_SACCRG( 22, 25) = 0.454592E+00 + PKER_SACCRG( 22, 26) = 0.422026E+00 + PKER_SACCRG( 22, 27) = 0.392436E+00 + PKER_SACCRG( 22, 28) = 0.371968E+00 + PKER_SACCRG( 22, 29) = 0.353731E+00 + PKER_SACCRG( 22, 30) = 0.336228E+00 + PKER_SACCRG( 22, 31) = 0.324990E+00 + PKER_SACCRG( 22, 32) = 0.317714E+00 + PKER_SACCRG( 22, 33) = 0.312229E+00 + PKER_SACCRG( 22, 34) = 0.310590E+00 + PKER_SACCRG( 22, 35) = 0.306480E+00 + PKER_SACCRG( 22, 36) = 0.298487E+00 + PKER_SACCRG( 22, 37) = 0.000000E+00 + PKER_SACCRG( 22, 38) = 0.000000E+00 + PKER_SACCRG( 22, 39) = 0.000000E+00 + PKER_SACCRG( 22, 40) = 0.000000E+00 + PKER_SACCRG( 23, 1) = 0.000000E+00 + PKER_SACCRG( 23, 2) = 0.000000E+00 + PKER_SACCRG( 23, 3) = 0.000000E+00 + PKER_SACCRG( 23, 4) = 0.000000E+00 + PKER_SACCRG( 23, 5) = 0.000000E+00 + PKER_SACCRG( 23, 6) = 0.000000E+00 + PKER_SACCRG( 23, 7) = 0.000000E+00 + PKER_SACCRG( 23, 8) = 0.779223E+00 + PKER_SACCRG( 23, 9) = 0.725418E+00 + PKER_SACCRG( 23, 10) = 0.629066E-01 + PKER_SACCRG( 23, 11) = 0.761978E+00 + PKER_SACCRG( 23, 12) = 0.789011E+00 + PKER_SACCRG( 23, 13) = 0.791581E+00 + PKER_SACCRG( 23, 14) = 0.780490E+00 + PKER_SACCRG( 23, 15) = 0.760916E+00 + PKER_SACCRG( 23, 16) = 0.759915E+00 + PKER_SACCRG( 23, 17) = 0.744331E+00 + PKER_SACCRG( 23, 18) = 0.730605E+00 + PKER_SACCRG( 23, 19) = 0.703564E+00 + PKER_SACCRG( 23, 20) = 0.675170E+00 + PKER_SACCRG( 23, 21) = 0.632741E+00 + PKER_SACCRG( 23, 22) = 0.592686E+00 + PKER_SACCRG( 23, 23) = 0.551579E+00 + PKER_SACCRG( 23, 24) = 0.510978E+00 + PKER_SACCRG( 23, 25) = 0.475153E+00 + PKER_SACCRG( 23, 26) = 0.442855E+00 + PKER_SACCRG( 23, 27) = 0.413554E+00 + PKER_SACCRG( 23, 28) = 0.393180E+00 + PKER_SACCRG( 23, 29) = 0.375093E+00 + PKER_SACCRG( 23, 30) = 0.357805E+00 + PKER_SACCRG( 23, 31) = 0.346682E+00 + PKER_SACCRG( 23, 32) = 0.339475E+00 + PKER_SACCRG( 23, 33) = 0.334055E+00 + PKER_SACCRG( 23, 34) = 0.332413E+00 + PKER_SACCRG( 23, 35) = 0.328367E+00 + PKER_SACCRG( 23, 36) = 0.320537E+00 + PKER_SACCRG( 23, 37) = 0.000000E+00 + PKER_SACCRG( 23, 38) = 0.000000E+00 + PKER_SACCRG( 23, 39) = 0.000000E+00 + PKER_SACCRG( 23, 40) = 0.000000E+00 + PKER_SACCRG( 24, 1) = 0.000000E+00 + PKER_SACCRG( 24, 2) = 0.000000E+00 + PKER_SACCRG( 24, 3) = 0.000000E+00 + PKER_SACCRG( 24, 4) = 0.000000E+00 + PKER_SACCRG( 24, 5) = 0.000000E+00 + PKER_SACCRG( 24, 6) = 0.000000E+00 + PKER_SACCRG( 24, 7) = 0.000000E+00 + PKER_SACCRG( 24, 8) = 0.794744E+00 + PKER_SACCRG( 24, 9) = 0.740984E+00 + PKER_SACCRG( 24, 10) = 0.633801E-01 + PKER_SACCRG( 24, 11) = 0.777556E+00 + PKER_SACCRG( 24, 12) = 0.804576E+00 + PKER_SACCRG( 24, 13) = 0.807152E+00 + PKER_SACCRG( 24, 14) = 0.796079E+00 + PKER_SACCRG( 24, 15) = 0.776533E+00 + PKER_SACCRG( 24, 16) = 0.775550E+00 + PKER_SACCRG( 24, 17) = 0.760004E+00 + PKER_SACCRG( 24, 18) = 0.746329E+00 + PKER_SACCRG( 24, 19) = 0.719365E+00 + PKER_SACCRG( 24, 20) = 0.691070E+00 + PKER_SACCRG( 24, 21) = 0.651450E+00 + PKER_SACCRG( 24, 22) = 0.608840E+00 + PKER_SACCRG( 24, 23) = 0.567932E+00 + PKER_SACCRG( 24, 24) = 0.527565E+00 + PKER_SACCRG( 24, 25) = 0.491917E+00 + PKER_SACCRG( 24, 26) = 0.459798E+00 + PKER_SACCRG( 24, 27) = 0.430691E+00 + PKER_SACCRG( 24, 28) = 0.410367E+00 + PKER_SACCRG( 24, 29) = 0.392372E+00 + PKER_SACCRG( 24, 30) = 0.375227E+00 + PKER_SACCRG( 24, 31) = 0.364178E+00 + PKER_SACCRG( 24, 32) = 0.357015E+00 + PKER_SACCRG( 24, 33) = 0.351637E+00 + PKER_SACCRG( 24, 34) = 0.349989E+00 + PKER_SACCRG( 24, 35) = 0.345989E+00 + PKER_SACCRG( 24, 36) = 0.338276E+00 + PKER_SACCRG( 24, 37) = 0.000000E+00 + PKER_SACCRG( 24, 38) = 0.000000E+00 + PKER_SACCRG( 24, 39) = 0.000000E+00 + PKER_SACCRG( 24, 40) = 0.000000E+00 + PKER_SACCRG( 25, 1) = 0.000000E+00 + PKER_SACCRG( 25, 2) = 0.000000E+00 + PKER_SACCRG( 25, 3) = 0.000000E+00 + PKER_SACCRG( 25, 4) = 0.000000E+00 + PKER_SACCRG( 25, 5) = 0.000000E+00 + PKER_SACCRG( 25, 6) = 0.000000E+00 + PKER_SACCRG( 25, 7) = 0.000000E+00 + PKER_SACCRG( 25, 8) = 0.807563E+00 + PKER_SACCRG( 25, 9) = 0.753833E+00 + PKER_SACCRG( 25, 10) = 0.643394E-01 + PKER_SACCRG( 25, 11) = 0.790417E+00 + PKER_SACCRG( 25, 12) = 0.817430E+00 + PKER_SACCRG( 25, 13) = 0.820012E+00 + PKER_SACCRG( 25, 14) = 0.808951E+00 + PKER_SACCRG( 25, 15) = 0.789425E+00 + PKER_SACCRG( 25, 16) = 0.788455E+00 + PKER_SACCRG( 25, 17) = 0.772937E+00 + PKER_SACCRG( 25, 18) = 0.759299E+00 + PKER_SACCRG( 25, 19) = 0.732392E+00 + PKER_SACCRG( 25, 20) = 0.704169E+00 + PKER_SACCRG( 25, 21) = 0.664647E+00 + PKER_SACCRG( 25, 22) = 0.622123E+00 + PKER_SACCRG( 25, 23) = 0.581352E+00 + PKER_SACCRG( 25, 24) = 0.541148E+00 + PKER_SACCRG( 25, 25) = 0.505619E+00 + PKER_SACCRG( 25, 26) = 0.473619E+00 + PKER_SACCRG( 25, 27) = 0.444639E+00 + PKER_SACCRG( 25, 28) = 0.424336E+00 + PKER_SACCRG( 25, 29) = 0.406394E+00 + PKER_SACCRG( 25, 30) = 0.389340E+00 + PKER_SACCRG( 25, 31) = 0.378332E+00 + PKER_SACCRG( 25, 32) = 0.371193E+00 + PKER_SACCRG( 25, 33) = 0.365840E+00 + PKER_SACCRG( 25, 34) = 0.364185E+00 + PKER_SACCRG( 25, 35) = 0.360213E+00 + PKER_SACCRG( 25, 36) = 0.352580E+00 + PKER_SACCRG( 25, 37) = 0.000000E+00 + PKER_SACCRG( 25, 38) = 0.000000E+00 + PKER_SACCRG( 25, 39) = 0.000000E+00 + PKER_SACCRG( 25, 40) = 0.000000E+00 + PKER_SACCRG( 26, 1) = 0.000000E+00 + PKER_SACCRG( 26, 2) = 0.000000E+00 + PKER_SACCRG( 26, 3) = 0.000000E+00 + PKER_SACCRG( 26, 4) = 0.000000E+00 + PKER_SACCRG( 26, 5) = 0.000000E+00 + PKER_SACCRG( 26, 6) = 0.000000E+00 + PKER_SACCRG( 26, 7) = 0.000000E+00 + PKER_SACCRG( 26, 8) = 0.818155E+00 + PKER_SACCRG( 26, 9) = 0.764445E+00 + PKER_SACCRG( 26, 10) = 0.652138E-01 + PKER_SACCRG( 26, 11) = 0.801042E+00 + PKER_SACCRG( 26, 12) = 0.828051E+00 + PKER_SACCRG( 26, 13) = 0.830636E+00 + PKER_SACCRG( 26, 14) = 0.819585E+00 + PKER_SACCRG( 26, 15) = 0.800072E+00 + PKER_SACCRG( 26, 16) = 0.799113E+00 + PKER_SACCRG( 26, 17) = 0.783616E+00 + PKER_SACCRG( 26, 18) = 0.770006E+00 + PKER_SACCRG( 26, 19) = 0.743140E+00 + PKER_SACCRG( 26, 20) = 0.714971E+00 + PKER_SACCRG( 26, 21) = 0.675519E+00 + PKER_SACCRG( 26, 22) = 0.633061E+00 + PKER_SACCRG( 26, 23) = 0.592381E+00 + PKER_SACCRG( 26, 24) = 0.552293E+00 + PKER_SACCRG( 26, 25) = 0.516845E+00 + PKER_SACCRG( 26, 26) = 0.484922E+00 + PKER_SACCRG( 26, 27) = 0.456026E+00 + PKER_SACCRG( 26, 28) = 0.435725E+00 + PKER_SACCRG( 26, 29) = 0.417811E+00 + PKER_SACCRG( 26, 30) = 0.400812E+00 + PKER_SACCRG( 26, 31) = 0.389826E+00 + PKER_SACCRG( 26, 32) = 0.382698E+00 + PKER_SACCRG( 26, 33) = 0.377358E+00 + PKER_SACCRG( 26, 34) = 0.375696E+00 + PKER_SACCRG( 26, 35) = 0.371742E+00 + PKER_SACCRG( 26, 36) = 0.364161E+00 + PKER_SACCRG( 26, 37) = 0.000000E+00 + PKER_SACCRG( 26, 38) = 0.000000E+00 + PKER_SACCRG( 26, 39) = 0.000000E+00 + PKER_SACCRG( 26, 40) = 0.000000E+00 + PKER_SACCRG( 27, 1) = 0.000000E+00 + PKER_SACCRG( 27, 2) = 0.000000E+00 + PKER_SACCRG( 27, 3) = 0.000000E+00 + PKER_SACCRG( 27, 4) = 0.000000E+00 + PKER_SACCRG( 27, 5) = 0.000000E+00 + PKER_SACCRG( 27, 6) = 0.000000E+00 + PKER_SACCRG( 27, 7) = 0.000000E+00 + PKER_SACCRG( 27, 8) = 0.826912E+00 + PKER_SACCRG( 27, 9) = 0.773214E+00 + PKER_SACCRG( 27, 10) = 0.722825E+00 + PKER_SACCRG( 27, 11) = 0.809822E+00 + PKER_SACCRG( 27, 12) = 0.836829E+00 + PKER_SACCRG( 27, 13) = 0.839417E+00 + PKER_SACCRG( 27, 14) = 0.828373E+00 + PKER_SACCRG( 27, 15) = 0.808870E+00 + PKER_SACCRG( 27, 16) = 0.807920E+00 + PKER_SACCRG( 27, 17) = 0.792438E+00 + PKER_SACCRG( 27, 18) = 0.778848E+00 + PKER_SACCRG( 27, 19) = 0.752014E+00 + PKER_SACCRG( 27, 20) = 0.723884E+00 + PKER_SACCRG( 27, 21) = 0.684484E+00 + PKER_SACCRG( 27, 22) = 0.642077E+00 + PKER_SACCRG( 27, 23) = 0.601458E+00 + PKER_SACCRG( 27, 24) = 0.561451E+00 + PKER_SACCRG( 27, 25) = 0.526058E+00 + PKER_SACCRG( 27, 26) = 0.494186E+00 + PKER_SACCRG( 27, 27) = 0.465344E+00 + PKER_SACCRG( 27, 28) = 0.445036E+00 + PKER_SACCRG( 27, 29) = 0.427133E+00 + PKER_SACCRG( 27, 30) = 0.410167E+00 + PKER_SACCRG( 27, 31) = 0.399191E+00 + PKER_SACCRG( 27, 32) = 0.392065E+00 + PKER_SACCRG( 27, 33) = 0.386731E+00 + PKER_SACCRG( 27, 34) = 0.385063E+00 + PKER_SACCRG( 27, 35) = 0.381119E+00 + PKER_SACCRG( 27, 36) = 0.373572E+00 + PKER_SACCRG( 27, 37) = 0.000000E+00 + PKER_SACCRG( 27, 38) = 0.000000E+00 + PKER_SACCRG( 27, 39) = 0.000000E+00 + PKER_SACCRG( 27, 40) = 0.000000E+00 + PKER_SACCRG( 28, 1) = 0.000000E+00 + PKER_SACCRG( 28, 2) = 0.000000E+00 + PKER_SACCRG( 28, 3) = 0.000000E+00 + PKER_SACCRG( 28, 4) = 0.000000E+00 + PKER_SACCRG( 28, 5) = 0.000000E+00 + PKER_SACCRG( 28, 6) = 0.000000E+00 + PKER_SACCRG( 28, 7) = 0.000000E+00 + PKER_SACCRG( 28, 8) = 0.834152E+00 + PKER_SACCRG( 28, 9) = 0.780463E+00 + PKER_SACCRG( 28, 10) = 0.730085E+00 + PKER_SACCRG( 28, 11) = 0.817081E+00 + PKER_SACCRG( 28, 12) = 0.844087E+00 + PKER_SACCRG( 28, 13) = 0.846678E+00 + PKER_SACCRG( 28, 14) = 0.835638E+00 + PKER_SACCRG( 28, 15) = 0.816143E+00 + PKER_SACCRG( 28, 16) = 0.815199E+00 + PKER_SACCRG( 28, 17) = 0.799728E+00 + PKER_SACCRG( 28, 18) = 0.786155E+00 + PKER_SACCRG( 28, 19) = 0.759343E+00 + PKER_SACCRG( 28, 20) = 0.731242E+00 + PKER_SACCRG( 28, 21) = 0.691881E+00 + PKER_SACCRG( 28, 22) = 0.649512E+00 + PKER_SACCRG( 28, 23) = 0.608935E+00 + PKER_SACCRG( 28, 24) = 0.568988E+00 + PKER_SACCRG( 28, 25) = 0.533631E+00 + PKER_SACCRG( 28, 26) = 0.501792E+00 + PKER_SACCRG( 28, 27) = 0.472984E+00 + PKER_SACCRG( 28, 28) = 0.452665E+00 + PKER_SACCRG( 28, 29) = 0.434765E+00 + PKER_SACCRG( 28, 30) = 0.417816E+00 + PKER_SACCRG( 28, 31) = 0.406842E+00 + PKER_SACCRG( 28, 32) = 0.399715E+00 + PKER_SACCRG( 28, 33) = 0.394383E+00 + PKER_SACCRG( 28, 34) = 0.392708E+00 + PKER_SACCRG( 28, 35) = 0.388770E+00 + PKER_SACCRG( 28, 36) = 0.381244E+00 + PKER_SACCRG( 28, 37) = 0.000000E+00 + PKER_SACCRG( 28, 38) = 0.000000E+00 + PKER_SACCRG( 28, 39) = 0.000000E+00 + PKER_SACCRG( 28, 40) = 0.000000E+00 + PKER_SACCRG( 29, 1) = 0.000000E+00 + PKER_SACCRG( 29, 2) = 0.000000E+00 + PKER_SACCRG( 29, 3) = 0.000000E+00 + PKER_SACCRG( 29, 4) = 0.000000E+00 + PKER_SACCRG( 29, 5) = 0.000000E+00 + PKER_SACCRG( 29, 6) = 0.000000E+00 + PKER_SACCRG( 29, 7) = 0.000000E+00 + PKER_SACCRG( 29, 8) = 0.840140E+00 + PKER_SACCRG( 29, 9) = 0.786456E+00 + PKER_SACCRG( 29, 10) = 0.736085E+00 + PKER_SACCRG( 29, 11) = 0.823083E+00 + PKER_SACCRG( 29, 12) = 0.850089E+00 + PKER_SACCRG( 29, 13) = 0.852682E+00 + PKER_SACCRG( 29, 14) = 0.841646E+00 + PKER_SACCRG( 29, 15) = 0.822156E+00 + PKER_SACCRG( 29, 16) = 0.821217E+00 + PKER_SACCRG( 29, 17) = 0.805755E+00 + PKER_SACCRG( 29, 18) = 0.792194E+00 + PKER_SACCRG( 29, 19) = 0.765399E+00 + PKER_SACCRG( 29, 20) = 0.737321E+00 + PKER_SACCRG( 29, 21) = 0.697987E+00 + PKER_SACCRG( 29, 22) = 0.655647E+00 + PKER_SACCRG( 29, 23) = 0.615100E+00 + PKER_SACCRG( 29, 24) = 0.575195E+00 + PKER_SACCRG( 29, 25) = 0.539863E+00 + PKER_SACCRG( 29, 26) = 0.508047E+00 + PKER_SACCRG( 29, 27) = 0.479260E+00 + PKER_SACCRG( 29, 28) = 0.458928E+00 + PKER_SACCRG( 29, 29) = 0.441026E+00 + PKER_SACCRG( 29, 30) = 0.424085E+00 + PKER_SACCRG( 29, 31) = 0.413109E+00 + PKER_SACCRG( 29, 32) = 0.405979E+00 + PKER_SACCRG( 29, 33) = 0.400646E+00 + PKER_SACCRG( 29, 34) = 0.398965E+00 + PKER_SACCRG( 29, 35) = 0.395030E+00 + PKER_SACCRG( 29, 36) = 0.387518E+00 + PKER_SACCRG( 29, 37) = 0.000000E+00 + PKER_SACCRG( 29, 38) = 0.000000E+00 + PKER_SACCRG( 29, 39) = 0.000000E+00 + PKER_SACCRG( 29, 40) = 0.000000E+00 + PKER_SACCRG( 30, 1) = 0.000000E+00 + PKER_SACCRG( 30, 2) = 0.000000E+00 + PKER_SACCRG( 30, 3) = 0.000000E+00 + PKER_SACCRG( 30, 4) = 0.000000E+00 + PKER_SACCRG( 30, 5) = 0.000000E+00 + PKER_SACCRG( 30, 6) = 0.000000E+00 + PKER_SACCRG( 30, 7) = 0.000000E+00 + PKER_SACCRG( 30, 8) = 0.845094E+00 + PKER_SACCRG( 30, 9) = 0.791414E+00 + PKER_SACCRG( 30, 10) = 0.741047E+00 + PKER_SACCRG( 30, 11) = 0.828048E+00 + PKER_SACCRG( 30, 12) = 0.855054E+00 + PKER_SACCRG( 30, 13) = 0.857648E+00 + PKER_SACCRG( 30, 14) = 0.846615E+00 + PKER_SACCRG( 30, 15) = 0.827129E+00 + PKER_SACCRG( 30, 16) = 0.826194E+00 + PKER_SACCRG( 30, 17) = 0.810738E+00 + PKER_SACCRG( 30, 18) = 0.797187E+00 + PKER_SACCRG( 30, 19) = 0.770405E+00 + PKER_SACCRG( 30, 20) = 0.742343E+00 + PKER_SACCRG( 30, 21) = 0.703031E+00 + PKER_SACCRG( 30, 22) = 0.660711E+00 + PKER_SACCRG( 30, 23) = 0.620186E+00 + PKER_SACCRG( 30, 24) = 0.580313E+00 + PKER_SACCRG( 30, 25) = 0.544997E+00 + PKER_SACCRG( 30, 26) = 0.513195E+00 + PKER_SACCRG( 30, 27) = 0.484422E+00 + PKER_SACCRG( 30, 28) = 0.464077E+00 + PKER_SACCRG( 30, 29) = 0.446170E+00 + PKER_SACCRG( 30, 30) = 0.429233E+00 + PKER_SACCRG( 30, 31) = 0.418253E+00 + PKER_SACCRG( 30, 32) = 0.411117E+00 + PKER_SACCRG( 30, 33) = 0.405783E+00 + PKER_SACCRG( 30, 34) = 0.404097E+00 + PKER_SACCRG( 30, 35) = 0.400163E+00 + PKER_SACCRG( 30, 36) = 0.392659E+00 + PKER_SACCRG( 30, 37) = 0.000000E+00 + PKER_SACCRG( 30, 38) = 0.000000E+00 + PKER_SACCRG( 30, 39) = 0.000000E+00 + PKER_SACCRG( 30, 40) = 0.000000E+00 + PKER_SACCRG( 31, 1) = 0.000000E+00 + PKER_SACCRG( 31, 2) = 0.000000E+00 + PKER_SACCRG( 31, 3) = 0.000000E+00 + PKER_SACCRG( 31, 4) = 0.000000E+00 + PKER_SACCRG( 31, 5) = 0.000000E+00 + PKER_SACCRG( 31, 6) = 0.000000E+00 + PKER_SACCRG( 31, 7) = 0.000000E+00 + PKER_SACCRG( 31, 8) = 0.849193E+00 + PKER_SACCRG( 31, 9) = 0.795515E+00 + PKER_SACCRG( 31, 10) = 0.745151E+00 + PKER_SACCRG( 31, 11) = 0.832155E+00 + PKER_SACCRG( 31, 12) = 0.859161E+00 + PKER_SACCRG( 31, 13) = 0.861757E+00 + PKER_SACCRG( 31, 14) = 0.850726E+00 + PKER_SACCRG( 31, 15) = 0.831243E+00 + PKER_SACCRG( 31, 16) = 0.830311E+00 + PKER_SACCRG( 31, 17) = 0.814860E+00 + PKER_SACCRG( 31, 18) = 0.801315E+00 + PKER_SACCRG( 31, 19) = 0.774544E+00 + PKER_SACCRG( 31, 20) = 0.746495E+00 + PKER_SACCRG( 31, 21) = 0.707199E+00 + PKER_SACCRG( 31, 22) = 0.665314E+00 + PKER_SACCRG( 31, 23) = 0.624385E+00 + PKER_SACCRG( 31, 24) = 0.584535E+00 + PKER_SACCRG( 31, 25) = 0.549231E+00 + PKER_SACCRG( 31, 26) = 0.517437E+00 + PKER_SACCRG( 31, 27) = 0.488673E+00 + PKER_SACCRG( 31, 28) = 0.468316E+00 + PKER_SACCRG( 31, 29) = 0.450402E+00 + PKER_SACCRG( 31, 30) = 0.433466E+00 + PKER_SACCRG( 31, 31) = 0.422481E+00 + PKER_SACCRG( 31, 32) = 0.415341E+00 + PKER_SACCRG( 31, 33) = 0.410003E+00 + PKER_SACCRG( 31, 34) = 0.408314E+00 + PKER_SACCRG( 31, 35) = 0.404379E+00 + PKER_SACCRG( 31, 36) = 0.396881E+00 + PKER_SACCRG( 31, 37) = 0.000000E+00 + PKER_SACCRG( 31, 38) = 0.000000E+00 + PKER_SACCRG( 31, 39) = 0.000000E+00 + PKER_SACCRG( 31, 40) = 0.000000E+00 + PKER_SACCRG( 32, 1) = 0.000000E+00 + PKER_SACCRG( 32, 2) = 0.000000E+00 + PKER_SACCRG( 32, 3) = 0.000000E+00 + PKER_SACCRG( 32, 4) = 0.000000E+00 + PKER_SACCRG( 32, 5) = 0.000000E+00 + PKER_SACCRG( 32, 6) = 0.000000E+00 + PKER_SACCRG( 32, 7) = 0.000000E+00 + PKER_SACCRG( 32, 8) = 0.852585E+00 + PKER_SACCRG( 32, 9) = 0.798908E+00 + PKER_SACCRG( 32, 10) = 0.748546E+00 + PKER_SACCRG( 32, 11) = 0.835553E+00 + PKER_SACCRG( 32, 12) = 0.862560E+00 + PKER_SACCRG( 32, 13) = 0.865156E+00 + PKER_SACCRG( 32, 14) = 0.854127E+00 + PKER_SACCRG( 32, 15) = 0.834646E+00 + PKER_SACCRG( 32, 16) = 0.833717E+00 + PKER_SACCRG( 32, 17) = 0.818269E+00 + PKER_SACCRG( 32, 18) = 0.804730E+00 + PKER_SACCRG( 32, 19) = 0.777966E+00 + PKER_SACCRG( 32, 20) = 0.749927E+00 + PKER_SACCRG( 32, 21) = 0.710643E+00 + PKER_SACCRG( 32, 22) = 0.668772E+00 + PKER_SACCRG( 32, 23) = 0.627853E+00 + PKER_SACCRG( 32, 24) = 0.588019E+00 + PKER_SACCRG( 32, 25) = 0.552723E+00 + PKER_SACCRG( 32, 26) = 0.520936E+00 + PKER_SACCRG( 32, 27) = 0.492177E+00 + PKER_SACCRG( 32, 28) = 0.471809E+00 + PKER_SACCRG( 32, 29) = 0.453889E+00 + PKER_SACCRG( 32, 30) = 0.436952E+00 + PKER_SACCRG( 32, 31) = 0.425962E+00 + PKER_SACCRG( 32, 32) = 0.418817E+00 + PKER_SACCRG( 32, 33) = 0.413477E+00 + PKER_SACCRG( 32, 34) = 0.411784E+00 + PKER_SACCRG( 32, 35) = 0.407849E+00 + PKER_SACCRG( 32, 36) = 0.400353E+00 + PKER_SACCRG( 32, 37) = 0.000000E+00 + PKER_SACCRG( 32, 38) = 0.000000E+00 + PKER_SACCRG( 32, 39) = 0.000000E+00 + PKER_SACCRG( 32, 40) = 0.000000E+00 + PKER_SACCRG( 33, 1) = 0.000000E+00 + PKER_SACCRG( 33, 2) = 0.000000E+00 + PKER_SACCRG( 33, 3) = 0.000000E+00 + PKER_SACCRG( 33, 4) = 0.000000E+00 + PKER_SACCRG( 33, 5) = 0.000000E+00 + PKER_SACCRG( 33, 6) = 0.000000E+00 + PKER_SACCRG( 33, 7) = 0.000000E+00 + PKER_SACCRG( 33, 8) = 0.855391E+00 + PKER_SACCRG( 33, 9) = 0.801716E+00 + PKER_SACCRG( 33, 10) = 0.751355E+00 + PKER_SACCRG( 33, 11) = 0.838364E+00 + PKER_SACCRG( 33, 12) = 0.865372E+00 + PKER_SACCRG( 33, 13) = 0.867969E+00 + PKER_SACCRG( 33, 14) = 0.856941E+00 + PKER_SACCRG( 33, 15) = 0.837462E+00 + PKER_SACCRG( 33, 16) = 0.836534E+00 + PKER_SACCRG( 33, 17) = 0.821090E+00 + PKER_SACCRG( 33, 18) = 0.807555E+00 + PKER_SACCRG( 33, 19) = 0.780797E+00 + PKER_SACCRG( 33, 20) = 0.752765E+00 + PKER_SACCRG( 33, 21) = 0.713491E+00 + PKER_SACCRG( 33, 22) = 0.671630E+00 + PKER_SACCRG( 33, 23) = 0.630717E+00 + PKER_SACCRG( 33, 24) = 0.590897E+00 + PKER_SACCRG( 33, 25) = 0.555606E+00 + PKER_SACCRG( 33, 26) = 0.523823E+00 + PKER_SACCRG( 33, 27) = 0.495067E+00 + PKER_SACCRG( 33, 28) = 0.474689E+00 + PKER_SACCRG( 33, 29) = 0.456764E+00 + PKER_SACCRG( 33, 30) = 0.439825E+00 + PKER_SACCRG( 33, 31) = 0.428830E+00 + PKER_SACCRG( 33, 32) = 0.421681E+00 + PKER_SACCRG( 33, 33) = 0.416338E+00 + PKER_SACCRG( 33, 34) = 0.414643E+00 + PKER_SACCRG( 33, 35) = 0.410707E+00 + PKER_SACCRG( 33, 36) = 0.403213E+00 + PKER_SACCRG( 33, 37) = 0.000000E+00 + PKER_SACCRG( 33, 38) = 0.000000E+00 + PKER_SACCRG( 33, 39) = 0.000000E+00 + PKER_SACCRG( 33, 40) = 0.000000E+00 + PKER_SACCRG( 34, 1) = 0.000000E+00 + PKER_SACCRG( 34, 2) = 0.000000E+00 + PKER_SACCRG( 34, 3) = 0.000000E+00 + PKER_SACCRG( 34, 4) = 0.000000E+00 + PKER_SACCRG( 34, 5) = 0.000000E+00 + PKER_SACCRG( 34, 6) = 0.000000E+00 + PKER_SACCRG( 34, 7) = 0.000000E+00 + PKER_SACCRG( 34, 8) = 0.857714E+00 + PKER_SACCRG( 34, 9) = 0.804039E+00 + PKER_SACCRG( 34, 10) = 0.753680E+00 + PKER_SACCRG( 34, 11) = 0.840691E+00 + PKER_SACCRG( 34, 12) = 0.867699E+00 + PKER_SACCRG( 34, 13) = 0.870297E+00 + PKER_SACCRG( 34, 14) = 0.859270E+00 + PKER_SACCRG( 34, 15) = 0.839792E+00 + PKER_SACCRG( 34, 16) = 0.838866E+00 + PKER_SACCRG( 34, 17) = 0.823423E+00 + PKER_SACCRG( 34, 18) = 0.809892E+00 + PKER_SACCRG( 34, 19) = 0.783139E+00 + PKER_SACCRG( 34, 20) = 0.755113E+00 + PKER_SACCRG( 34, 21) = 0.715845E+00 + PKER_SACCRG( 34, 22) = 0.673992E+00 + PKER_SACCRG( 34, 23) = 0.633085E+00 + PKER_SACCRG( 34, 24) = 0.593274E+00 + PKER_SACCRG( 34, 25) = 0.557987E+00 + PKER_SACCRG( 34, 26) = 0.526206E+00 + PKER_SACCRG( 34, 27) = 0.497452E+00 + PKER_SACCRG( 34, 28) = 0.477066E+00 + PKER_SACCRG( 34, 29) = 0.459136E+00 + PKER_SACCRG( 34, 30) = 0.442195E+00 + PKER_SACCRG( 34, 31) = 0.431196E+00 + PKER_SACCRG( 34, 32) = 0.424043E+00 + PKER_SACCRG( 34, 33) = 0.418698E+00 + PKER_SACCRG( 34, 34) = 0.417000E+00 + PKER_SACCRG( 34, 35) = 0.413064E+00 + PKER_SACCRG( 34, 36) = 0.405570E+00 + PKER_SACCRG( 34, 37) = 0.000000E+00 + PKER_SACCRG( 34, 38) = 0.000000E+00 + PKER_SACCRG( 34, 39) = 0.000000E+00 + PKER_SACCRG( 34, 40) = 0.000000E+00 + PKER_SACCRG( 35, 1) = 0.000000E+00 + PKER_SACCRG( 35, 2) = 0.000000E+00 + PKER_SACCRG( 35, 3) = 0.000000E+00 + PKER_SACCRG( 35, 4) = 0.000000E+00 + PKER_SACCRG( 35, 5) = 0.000000E+00 + PKER_SACCRG( 35, 6) = 0.000000E+00 + PKER_SACCRG( 35, 7) = 0.000000E+00 + PKER_SACCRG( 35, 8) = 0.859637E+00 + PKER_SACCRG( 35, 9) = 0.805962E+00 + PKER_SACCRG( 35, 10) = 0.755603E+00 + PKER_SACCRG( 35, 11) = 0.842616E+00 + PKER_SACCRG( 35, 12) = 0.869625E+00 + PKER_SACCRG( 35, 13) = 0.872223E+00 + PKER_SACCRG( 35, 14) = 0.861197E+00 + PKER_SACCRG( 35, 15) = 0.841720E+00 + PKER_SACCRG( 35, 16) = 0.840795E+00 + PKER_SACCRG( 35, 17) = 0.825354E+00 + PKER_SACCRG( 35, 18) = 0.811826E+00 + PKER_SACCRG( 35, 19) = 0.785076E+00 + PKER_SACCRG( 35, 20) = 0.757054E+00 + PKER_SACCRG( 35, 21) = 0.717792E+00 + PKER_SACCRG( 35, 22) = 0.675945E+00 + PKER_SACCRG( 35, 23) = 0.635042E+00 + PKER_SACCRG( 35, 24) = 0.595238E+00 + PKER_SACCRG( 35, 25) = 0.559954E+00 + PKER_SACCRG( 35, 26) = 0.528174E+00 + PKER_SACCRG( 35, 27) = 0.499421E+00 + PKER_SACCRG( 35, 28) = 0.479029E+00 + PKER_SACCRG( 35, 29) = 0.461094E+00 + PKER_SACCRG( 35, 30) = 0.444151E+00 + PKER_SACCRG( 35, 31) = 0.433148E+00 + PKER_SACCRG( 35, 32) = 0.425993E+00 + PKER_SACCRG( 35, 33) = 0.420646E+00 + PKER_SACCRG( 35, 34) = 0.418946E+00 + PKER_SACCRG( 35, 35) = 0.415009E+00 + PKER_SACCRG( 35, 36) = 0.407516E+00 + PKER_SACCRG( 35, 37) = 0.000000E+00 + PKER_SACCRG( 35, 38) = 0.000000E+00 + PKER_SACCRG( 35, 39) = 0.000000E+00 + PKER_SACCRG( 35, 40) = 0.000000E+00 + PKER_SACCRG( 36, 1) = 0.000000E+00 + PKER_SACCRG( 36, 2) = 0.000000E+00 + PKER_SACCRG( 36, 3) = 0.000000E+00 + PKER_SACCRG( 36, 4) = 0.000000E+00 + PKER_SACCRG( 36, 5) = 0.000000E+00 + PKER_SACCRG( 36, 6) = 0.000000E+00 + PKER_SACCRG( 36, 7) = 0.000000E+00 + PKER_SACCRG( 36, 8) = 0.861228E+00 + PKER_SACCRG( 36, 9) = 0.807554E+00 + PKER_SACCRG( 36, 10) = 0.757195E+00 + PKER_SACCRG( 36, 11) = 0.844210E+00 + PKER_SACCRG( 36, 12) = 0.871219E+00 + PKER_SACCRG( 36, 13) = 0.873817E+00 + PKER_SACCRG( 36, 14) = 0.862791E+00 + PKER_SACCRG( 36, 15) = 0.843315E+00 + PKER_SACCRG( 36, 16) = 0.842391E+00 + PKER_SACCRG( 36, 17) = 0.826952E+00 + PKER_SACCRG( 36, 18) = 0.813425E+00 + PKER_SACCRG( 36, 19) = 0.786678E+00 + PKER_SACCRG( 36, 20) = 0.758660E+00 + PKER_SACCRG( 36, 21) = 0.719402E+00 + PKER_SACCRG( 36, 22) = 0.677560E+00 + PKER_SACCRG( 36, 23) = 0.636660E+00 + PKER_SACCRG( 36, 24) = 0.596861E+00 + PKER_SACCRG( 36, 25) = 0.561579E+00 + PKER_SACCRG( 36, 26) = 0.529800E+00 + PKER_SACCRG( 36, 27) = 0.501048E+00 + PKER_SACCRG( 36, 28) = 0.480650E+00 + PKER_SACCRG( 36, 29) = 0.462712E+00 + PKER_SACCRG( 36, 30) = 0.445767E+00 + PKER_SACCRG( 36, 31) = 0.434761E+00 + PKER_SACCRG( 36, 32) = 0.427602E+00 + PKER_SACCRG( 36, 33) = 0.422254E+00 + PKER_SACCRG( 36, 34) = 0.420553E+00 + PKER_SACCRG( 36, 35) = 0.416615E+00 + PKER_SACCRG( 36, 36) = 0.409122E+00 + PKER_SACCRG( 36, 37) = 0.000000E+00 + PKER_SACCRG( 36, 38) = 0.000000E+00 + PKER_SACCRG( 36, 39) = 0.000000E+00 + PKER_SACCRG( 36, 40) = 0.000000E+00 + PKER_SACCRG( 37, 1) = 0.000000E+00 + PKER_SACCRG( 37, 2) = 0.000000E+00 + PKER_SACCRG( 37, 3) = 0.000000E+00 + PKER_SACCRG( 37, 4) = 0.000000E+00 + PKER_SACCRG( 37, 5) = 0.000000E+00 + PKER_SACCRG( 37, 6) = 0.000000E+00 + PKER_SACCRG( 37, 7) = 0.000000E+00 + PKER_SACCRG( 37, 8) = 0.862545E+00 + PKER_SACCRG( 37, 9) = 0.808871E+00 + PKER_SACCRG( 37, 10) = 0.758513E+00 + PKER_SACCRG( 37, 11) = 0.845529E+00 + PKER_SACCRG( 37, 12) = 0.872538E+00 + PKER_SACCRG( 37, 13) = 0.875137E+00 + PKER_SACCRG( 37, 14) = 0.864111E+00 + PKER_SACCRG( 37, 15) = 0.844636E+00 + PKER_SACCRG( 37, 16) = 0.843713E+00 + PKER_SACCRG( 37, 17) = 0.828275E+00 + PKER_SACCRG( 37, 18) = 0.814749E+00 + PKER_SACCRG( 37, 19) = 0.788004E+00 + PKER_SACCRG( 37, 20) = 0.759989E+00 + PKER_SACCRG( 37, 21) = 0.720734E+00 + PKER_SACCRG( 37, 22) = 0.678896E+00 + PKER_SACCRG( 37, 23) = 0.637998E+00 + PKER_SACCRG( 37, 24) = 0.598203E+00 + PKER_SACCRG( 37, 25) = 0.562923E+00 + PKER_SACCRG( 37, 26) = 0.531144E+00 + PKER_SACCRG( 37, 27) = 0.502392E+00 + PKER_SACCRG( 37, 28) = 0.481990E+00 + PKER_SACCRG( 37, 29) = 0.464049E+00 + PKER_SACCRG( 37, 30) = 0.447102E+00 + PKER_SACCRG( 37, 31) = 0.436093E+00 + PKER_SACCRG( 37, 32) = 0.428933E+00 + PKER_SACCRG( 37, 33) = 0.423583E+00 + PKER_SACCRG( 37, 34) = 0.421881E+00 + PKER_SACCRG( 37, 35) = 0.417942E+00 + PKER_SACCRG( 37, 36) = 0.410449E+00 + PKER_SACCRG( 37, 37) = 0.000000E+00 + PKER_SACCRG( 37, 38) = 0.000000E+00 + PKER_SACCRG( 37, 39) = 0.000000E+00 + PKER_SACCRG( 37, 40) = 0.000000E+00 + PKER_SACCRG( 38, 1) = 0.000000E+00 + PKER_SACCRG( 38, 2) = 0.000000E+00 + PKER_SACCRG( 38, 3) = 0.000000E+00 + PKER_SACCRG( 38, 4) = 0.000000E+00 + PKER_SACCRG( 38, 5) = 0.000000E+00 + PKER_SACCRG( 38, 6) = 0.000000E+00 + PKER_SACCRG( 38, 7) = 0.000000E+00 + PKER_SACCRG( 38, 8) = 0.864084E+00 + PKER_SACCRG( 38, 9) = 0.810382E+00 + PKER_SACCRG( 38, 10) = 0.759998E+00 + PKER_SACCRG( 38, 11) = 0.847060E+00 + PKER_SACCRG( 38, 12) = 0.874083E+00 + PKER_SACCRG( 38, 13) = 0.876684E+00 + PKER_SACCRG( 38, 14) = 0.865653E+00 + PKER_SACCRG( 38, 15) = 0.846168E+00 + PKER_SACCRG( 38, 16) = 0.845245E+00 + PKER_SACCRG( 38, 17) = 0.829800E+00 + PKER_SACCRG( 38, 18) = 0.816269E+00 + PKER_SACCRG( 38, 19) = 0.789511E+00 + PKER_SACCRG( 38, 20) = 0.761484E+00 + PKER_SACCRG( 38, 21) = 0.722211E+00 + PKER_SACCRG( 38, 22) = 0.680354E+00 + PKER_SACCRG( 38, 23) = 0.639436E+00 + PKER_SACCRG( 38, 24) = 0.599624E+00 + PKER_SACCRG( 38, 25) = 0.564327E+00 + PKER_SACCRG( 38, 26) = 0.532532E+00 + PKER_SACCRG( 38, 27) = 0.503764E+00 + PKER_SACCRG( 38, 28) = 0.483348E+00 + PKER_SACCRG( 38, 29) = 0.465395E+00 + PKER_SACCRG( 38, 30) = 0.448438E+00 + PKER_SACCRG( 38, 31) = 0.437422E+00 + PKER_SACCRG( 38, 32) = 0.430256E+00 + PKER_SACCRG( 38, 33) = 0.424902E+00 + PKER_SACCRG( 38, 34) = 0.423198E+00 + PKER_SACCRG( 38, 35) = 0.419256E+00 + PKER_SACCRG( 38, 36) = 0.411759E+00 + PKER_SACCRG( 38, 37) = 0.000000E+00 + PKER_SACCRG( 38, 38) = 0.000000E+00 + PKER_SACCRG( 38, 39) = 0.000000E+00 + PKER_SACCRG( 38, 40) = 0.000000E+00 + PKER_SACCRG( 39, 1) = 0.000000E+00 + PKER_SACCRG( 39, 2) = 0.000000E+00 + PKER_SACCRG( 39, 3) = 0.000000E+00 + PKER_SACCRG( 39, 4) = 0.000000E+00 + PKER_SACCRG( 39, 5) = 0.000000E+00 + PKER_SACCRG( 39, 6) = 0.000000E+00 + PKER_SACCRG( 39, 7) = 0.000000E+00 + PKER_SACCRG( 39, 8) = 0.864538E+00 + PKER_SACCRG( 39, 9) = 0.810864E+00 + PKER_SACCRG( 39, 10) = 0.760506E+00 + PKER_SACCRG( 39, 11) = 0.847524E+00 + PKER_SACCRG( 39, 12) = 0.874534E+00 + PKER_SACCRG( 39, 13) = 0.877133E+00 + PKER_SACCRG( 39, 14) = 0.866108E+00 + PKER_SACCRG( 39, 15) = 0.846633E+00 + PKER_SACCRG( 39, 16) = 0.845711E+00 + PKER_SACCRG( 39, 17) = 0.830275E+00 + PKER_SACCRG( 39, 18) = 0.816752E+00 + PKER_SACCRG( 39, 19) = 0.790009E+00 + PKER_SACCRG( 39, 20) = 0.761998E+00 + PKER_SACCRG( 39, 21) = 0.722748E+00 + PKER_SACCRG( 39, 22) = 0.680914E+00 + PKER_SACCRG( 39, 23) = 0.640019E+00 + PKER_SACCRG( 39, 24) = 0.600230E+00 + PKER_SACCRG( 39, 25) = 0.564952E+00 + PKER_SACCRG( 39, 26) = 0.533174E+00 + PKER_SACCRG( 39, 27) = 0.504421E+00 + PKER_SACCRG( 39, 28) = 0.484013E+00 + PKER_SACCRG( 39, 29) = 0.466067E+00 + PKER_SACCRG( 39, 30) = 0.449117E+00 + PKER_SACCRG( 39, 31) = 0.438105E+00 + PKER_SACCRG( 39, 32) = 0.430941E+00 + PKER_SACCRG( 39, 33) = 0.425589E+00 + PKER_SACCRG( 39, 34) = 0.423885E+00 + PKER_SACCRG( 39, 35) = 0.419946E+00 + PKER_SACCRG( 39, 36) = 0.412452E+00 + PKER_SACCRG( 39, 37) = 0.000000E+00 + PKER_SACCRG( 39, 38) = 0.000000E+00 + PKER_SACCRG( 39, 39) = 0.000000E+00 + PKER_SACCRG( 39, 40) = 0.000000E+00 + PKER_SACCRG( 40, 1) = 0.000000E+00 + PKER_SACCRG( 40, 2) = 0.000000E+00 + PKER_SACCRG( 40, 3) = 0.000000E+00 + PKER_SACCRG( 40, 4) = 0.000000E+00 + PKER_SACCRG( 40, 5) = 0.000000E+00 + PKER_SACCRG( 40, 6) = 0.000000E+00 + PKER_SACCRG( 40, 7) = 0.000000E+00 + PKER_SACCRG( 40, 8) = 0.865285E+00 + PKER_SACCRG( 40, 9) = 0.811611E+00 + PKER_SACCRG( 40, 10) = 0.761253E+00 + PKER_SACCRG( 40, 11) = 0.848272E+00 + PKER_SACCRG( 40, 12) = 0.875282E+00 + PKER_SACCRG( 40, 13) = 0.877881E+00 + PKER_SACCRG( 40, 14) = 0.866857E+00 + PKER_SACCRG( 40, 15) = 0.847382E+00 + PKER_SACCRG( 40, 16) = 0.846460E+00 + PKER_SACCRG( 40, 17) = 0.831024E+00 + PKER_SACCRG( 40, 18) = 0.817502E+00 + PKER_SACCRG( 40, 19) = 0.790761E+00 + PKER_SACCRG( 40, 20) = 0.762751E+00 + PKER_SACCRG( 40, 21) = 0.723502E+00 + PKER_SACCRG( 40, 22) = 0.681670E+00 + PKER_SACCRG( 40, 23) = 0.640776E+00 + PKER_SACCRG( 40, 24) = 0.600989E+00 + PKER_SACCRG( 40, 25) = 0.565711E+00 + PKER_SACCRG( 40, 26) = 0.533933E+00 + PKER_SACCRG( 40, 27) = 0.505180E+00 + PKER_SACCRG( 40, 28) = 0.484770E+00 + PKER_SACCRG( 40, 29) = 0.466822E+00 + PKER_SACCRG( 40, 30) = 0.449871E+00 + PKER_SACCRG( 40, 31) = 0.438858E+00 + PKER_SACCRG( 40, 32) = 0.431693E+00 + PKER_SACCRG( 40, 33) = 0.426340E+00 + PKER_SACCRG( 40, 34) = 0.424636E+00 + PKER_SACCRG( 40, 35) = 0.420696E+00 + PKER_SACCRG( 40, 36) = 0.413202E+00 + PKER_SACCRG( 40, 37) = 0.000000E+00 + PKER_SACCRG( 40, 38) = 0.000000E+00 + PKER_SACCRG( 40, 39) = 0.000000E+00 + PKER_SACCRG( 40, 40) = 0.000000E+00 +END IF + +! +END SUBROUTINE LIMA_READ_XKER_RACCS diff --git a/src/MNH/lima_read_xker_rdryg.f90 b/src/MNH/lima_read_xker_rdryg.f90 new file mode 100644 index 0000000000000000000000000000000000000000..de1a4287401dc151fb785ab4e23b24010b8988e0 --- /dev/null +++ b/src/MNH/lima_read_xker_rdryg.f90 @@ -0,0 +1,1736 @@ +!MNH_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +!----------------------------------------------------------------- +!--------------- special set of characters for RCS information +!----------------------------------------------------------------- +! $Source$ $Revision$ +! MASDEV4_7 init 2006/05/18 13:07:25 +!----------------------------------------------------------------- +! ########################### + MODULE MODI_LIMA_READ_XKER_RDRYG +! ########################### +! +INTERFACE + SUBROUTINE LIMA_READ_XKER_RDRYG (KDRYLBDAG,KDRYLBDAR,KND, & + PALPHAG,PNUG,PALPHAR,PNUR,PEGR,PBR,PCG,PDG,PCR,PDR, & + PDRYLBDAG_MAX,PDRYLBDAR_MAX,PDRYLBDAG_MIN,PDRYLBDAR_MIN, & + PFDINFTY,PKER_RDRYG ) +! +INTEGER, INTENT(OUT) :: KND,KDRYLBDAG,KDRYLBDAR +REAL, INTENT(OUT) :: PALPHAG +REAL, INTENT(OUT) :: PNUG +REAL, INTENT(OUT) :: PALPHAR +REAL, INTENT(OUT) :: PNUR +REAL, INTENT(OUT) :: PEGR +REAL, INTENT(OUT) :: PBR +REAL, INTENT(OUT) :: PCG +REAL, INTENT(OUT) :: PDG +REAL, INTENT(OUT) :: PCR +REAL, INTENT(OUT) :: PDR +REAL, INTENT(OUT) :: PDRYLBDAG_MAX +REAL, INTENT(OUT) :: PDRYLBDAR_MAX +REAL, INTENT(OUT) :: PDRYLBDAG_MIN +REAL, INTENT(OUT) :: PDRYLBDAR_MIN +REAL, INTENT(OUT) :: PFDINFTY +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_RDRYG +! +END SUBROUTINE LIMA_READ_XKER_RDRYG +! +END INTERFACE +! +END MODULE MODI_LIMA_READ_XKER_RDRYG +! ######################################################################## + SUBROUTINE LIMA_READ_XKER_RDRYG (KDRYLBDAG,KDRYLBDAR,KND, & + PALPHAG,PNUG,PALPHAR,PNUR,PEGR,PBR,PCG,PDG,PCR,PDR, & + PDRYLBDAG_MAX,PDRYLBDAR_MAX,PDRYLBDAG_MIN,PDRYLBDAR_MIN, & + PFDINFTY,PKER_RDRYG ) +! ######################################################################## +! +!!**** * * - initialize the kernels for the snow-graupel dry growth process +!! +!! PURPOSE +!! ------- +!! The purpose of this routine is to initialize the kernels PKER_RDRYG +!! prepared from a previous run of the routine INI_RAIN_ICE. The reading of +!! the kernels is optional after checking for the dimensions of the arrays. +!! +!!** METHOD +!! ------ +!! +!! +!! EXTERNAL +!! -------- +!! None +!! +!! +!! IMPLICIT ARGUMENTS +!! ------------------ +!! None +!! +!! REFERENCE +!! --------- +!! Book2 of documentation ( routine READ_XKER_RDRYG ) +!! +!! AUTHOR +!! ------ +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original 09/04/96 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +!* 0.2 Declarations of local variables : +! +! +INTEGER, INTENT(OUT) :: KND,KDRYLBDAG,KDRYLBDAR +REAL, INTENT(OUT) :: PALPHAG +REAL, INTENT(OUT) :: PNUG +REAL, INTENT(OUT) :: PALPHAR +REAL, INTENT(OUT) :: PNUR +REAL, INTENT(OUT) :: PEGR +REAL, INTENT(OUT) :: PBR +REAL, INTENT(OUT) :: PCG +REAL, INTENT(OUT) :: PDG +REAL, INTENT(OUT) :: PCR +REAL, INTENT(OUT) :: PDR +REAL, INTENT(OUT) :: PDRYLBDAG_MAX +REAL, INTENT(OUT) :: PDRYLBDAR_MAX +REAL, INTENT(OUT) :: PDRYLBDAG_MIN +REAL, INTENT(OUT) :: PDRYLBDAR_MIN +REAL, INTENT(OUT) :: PFDINFTY +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_RDRYG +! +! ################################################################### +! #INSERT HERE THE OUTPUT OF INI_RAIN_ICE IF THE KERNELS ARE UPDATED# +! ################################################################### +! +KND= 50 +KDRYLBDAG= 40 +KDRYLBDAR= 40 +PALPHAG= 0.100000E+01 +PNUG= 0.100000E+01 +PALPHAR= 0.100000E+01 +PNUR= 0.200000E+01 +PEGR= 0.100000E+01 +PBR= 0.300000E+01 +PCG= 0.122000E+03 +PDG= 0.660000E+00 +PCR= 0.842000E+03 +PDR= 0.800000E+00 +PDRYLBDAG_MAX= 0.100000E+08 +PDRYLBDAR_MAX= 0.100000E+08 +PDRYLBDAG_MIN= 0.100000E+04 +PDRYLBDAR_MIN= 0.100000E+04 +PFDINFTY= 0.200000E+02 +! +IF( PRESENT(PKER_RDRYG) ) THEN +PKER_RDRYG( 1, 1) = 0.134210E+02 +PKER_RDRYG( 1, 2) = 0.106490E+02 +PKER_RDRYG( 1, 3) = 0.834292E+01 +PKER_RDRYG( 1, 4) = 0.642847E+01 +PKER_RDRYG( 1, 5) = 0.484974E+01 +PKER_RDRYG( 1, 6) = 0.356945E+01 +PKER_RDRYG( 1, 7) = 0.256678E+01 +PKER_RDRYG( 1, 8) = 0.183093E+01 +PKER_RDRYG( 1, 9) = 0.135156E+01 +PKER_RDRYG( 1, 10) = 0.110260E+01 +PKER_RDRYG( 1, 11) = 0.104070E+01 +PKER_RDRYG( 1, 12) = 0.110897E+01 +PKER_RDRYG( 1, 13) = 0.125122E+01 +PKER_RDRYG( 1, 14) = 0.142283E+01 +PKER_RDRYG( 1, 15) = 0.159456E+01 +PKER_RDRYG( 1, 16) = 0.175135E+01 +PKER_RDRYG( 1, 17) = 0.188742E+01 +PKER_RDRYG( 1, 18) = 0.200233E+01 +PKER_RDRYG( 1, 19) = 0.209795E+01 +PKER_RDRYG( 1, 20) = 0.217687E+01 +PKER_RDRYG( 1, 21) = 0.224175E+01 +PKER_RDRYG( 1, 22) = 0.229504E+01 +PKER_RDRYG( 1, 23) = 0.233883E+01 +PKER_RDRYG( 1, 24) = 0.237485E+01 +PKER_RDRYG( 1, 25) = 0.240449E+01 +PKER_RDRYG( 1, 26) = 0.242888E+01 +PKER_RDRYG( 1, 27) = 0.244897E+01 +PKER_RDRYG( 1, 28) = 0.246553E+01 +PKER_RDRYG( 1, 29) = 0.247917E+01 +PKER_RDRYG( 1, 30) = 0.249042E+01 +PKER_RDRYG( 1, 31) = 0.249970E+01 +PKER_RDRYG( 1, 32) = 0.250735E+01 +PKER_RDRYG( 1, 33) = 0.251366E+01 +PKER_RDRYG( 1, 34) = 0.251887E+01 +PKER_RDRYG( 1, 35) = 0.252317E+01 +PKER_RDRYG( 1, 36) = 0.252671E+01 +PKER_RDRYG( 1, 37) = 0.252964E+01 +PKER_RDRYG( 1, 38) = 0.253206E+01 +PKER_RDRYG( 1, 39) = 0.253406E+01 +PKER_RDRYG( 1, 40) = 0.253571E+01 +PKER_RDRYG( 2, 1) = 0.138258E+02 +PKER_RDRYG( 2, 2) = 0.110664E+02 +PKER_RDRYG( 2, 3) = 0.877034E+01 +PKER_RDRYG( 2, 4) = 0.686001E+01 +PKER_RDRYG( 2, 5) = 0.527438E+01 +PKER_RDRYG( 2, 6) = 0.396820E+01 +PKER_RDRYG( 2, 7) = 0.291168E+01 +PKER_RDRYG( 2, 8) = 0.208952E+01 +PKER_RDRYG( 2, 9) = 0.149350E+01 +PKER_RDRYG( 2, 10) = 0.111353E+01 +PKER_RDRYG( 2, 11) = 0.926786E+00 +PKER_RDRYG( 2, 12) = 0.892818E+00 +PKER_RDRYG( 2, 13) = 0.963446E+00 +PKER_RDRYG( 2, 14) = 0.109105E+01 +PKER_RDRYG( 2, 15) = 0.123930E+01 +PKER_RDRYG( 2, 16) = 0.138520E+01 +PKER_RDRYG( 2, 17) = 0.151708E+01 +PKER_RDRYG( 2, 18) = 0.163089E+01 +PKER_RDRYG( 2, 19) = 0.172673E+01 +PKER_RDRYG( 2, 20) = 0.180633E+01 +PKER_RDRYG( 2, 21) = 0.187195E+01 +PKER_RDRYG( 2, 22) = 0.192586E+01 +PKER_RDRYG( 2, 23) = 0.197013E+01 +PKER_RDRYG( 2, 24) = 0.200651E+01 +PKER_RDRYG( 2, 25) = 0.203642E+01 +PKER_RDRYG( 2, 26) = 0.206103E+01 +PKER_RDRYG( 2, 27) = 0.208129E+01 +PKER_RDRYG( 2, 28) = 0.209797E+01 +PKER_RDRYG( 2, 29) = 0.211172E+01 +PKER_RDRYG( 2, 30) = 0.212304E+01 +PKER_RDRYG( 2, 31) = 0.213238E+01 +PKER_RDRYG( 2, 32) = 0.214007E+01 +PKER_RDRYG( 2, 33) = 0.214642E+01 +PKER_RDRYG( 2, 34) = 0.215166E+01 +PKER_RDRYG( 2, 35) = 0.215598E+01 +PKER_RDRYG( 2, 36) = 0.215954E+01 +PKER_RDRYG( 2, 37) = 0.216249E+01 +PKER_RDRYG( 2, 38) = 0.216492E+01 +PKER_RDRYG( 2, 39) = 0.216692E+01 +PKER_RDRYG( 2, 40) = 0.216858E+01 +PKER_RDRYG( 3, 1) = 0.141567E+02 +PKER_RDRYG( 3, 2) = 0.114089E+02 +PKER_RDRYG( 3, 3) = 0.912360E+01 +PKER_RDRYG( 3, 4) = 0.722169E+01 +PKER_RDRYG( 3, 5) = 0.563921E+01 +PKER_RDRYG( 3, 6) = 0.432602E+01 +PKER_RDRYG( 3, 7) = 0.324547E+01 +PKER_RDRYG( 3, 8) = 0.237429E+01 +PKER_RDRYG( 3, 9) = 0.170066E+01 +PKER_RDRYG( 3, 10) = 0.121912E+01 +PKER_RDRYG( 3, 11) = 0.919677E+00 +PKER_RDRYG( 3, 12) = 0.780708E+00 +PKER_RDRYG( 3, 13) = 0.767737E+00 +PKER_RDRYG( 3, 14) = 0.837693E+00 +PKER_RDRYG( 3, 15) = 0.951377E+00 +PKER_RDRYG( 3, 16) = 0.107910E+01 +PKER_RDRYG( 3, 17) = 0.120275E+01 +PKER_RDRYG( 3, 18) = 0.131354E+01 +PKER_RDRYG( 3, 19) = 0.140872E+01 +PKER_RDRYG( 3, 20) = 0.148863E+01 +PKER_RDRYG( 3, 21) = 0.155489E+01 +PKER_RDRYG( 3, 22) = 0.160944E+01 +PKER_RDRYG( 3, 23) = 0.165424E+01 +PKER_RDRYG( 3, 24) = 0.169103E+01 +PKER_RDRYG( 3, 25) = 0.172125E+01 +PKER_RDRYG( 3, 26) = 0.174610E+01 +PKER_RDRYG( 3, 27) = 0.176654E+01 +PKER_RDRYG( 3, 28) = 0.178336E+01 +PKER_RDRYG( 3, 29) = 0.179721E+01 +PKER_RDRYG( 3, 30) = 0.180862E+01 +PKER_RDRYG( 3, 31) = 0.181802E+01 +PKER_RDRYG( 3, 32) = 0.182577E+01 +PKER_RDRYG( 3, 33) = 0.183215E+01 +PKER_RDRYG( 3, 34) = 0.183742E+01 +PKER_RDRYG( 3, 35) = 0.184177E+01 +PKER_RDRYG( 3, 36) = 0.184535E+01 +PKER_RDRYG( 3, 37) = 0.184831E+01 +PKER_RDRYG( 3, 38) = 0.185075E+01 +PKER_RDRYG( 3, 39) = 0.185277E+01 +PKER_RDRYG( 3, 40) = 0.185443E+01 +PKER_RDRYG( 4, 1) = 0.144269E+02 +PKER_RDRYG( 4, 2) = 0.116888E+02 +PKER_RDRYG( 4, 3) = 0.941339E+01 +PKER_RDRYG( 4, 4) = 0.752068E+01 +PKER_RDRYG( 4, 5) = 0.594528E+01 +PKER_RDRYG( 4, 6) = 0.463440E+01 +PKER_RDRYG( 4, 7) = 0.354694E+01 +PKER_RDRYG( 4, 8) = 0.265338E+01 +PKER_RDRYG( 4, 9) = 0.193548E+01 +PKER_RDRYG( 4, 10) = 0.138447E+01 +PKER_RDRYG( 4, 11) = 0.996309E+00 +PKER_RDRYG( 4, 12) = 0.761568E+00 +PKER_RDRYG( 4, 13) = 0.660627E+00 +PKER_RDRYG( 4, 14) = 0.661754E+00 +PKER_RDRYG( 4, 15) = 0.729010E+00 +PKER_RDRYG( 4, 16) = 0.829397E+00 +PKER_RDRYG( 4, 17) = 0.939122E+00 +PKER_RDRYG( 4, 18) = 0.104378E+01 +PKER_RDRYG( 4, 19) = 0.113682E+01 +PKER_RDRYG( 4, 20) = 0.121638E+01 +PKER_RDRYG( 4, 21) = 0.128300E+01 +PKER_RDRYG( 4, 22) = 0.133814E+01 +PKER_RDRYG( 4, 23) = 0.138351E+01 +PKER_RDRYG( 4, 24) = 0.142074E+01 +PKER_RDRYG( 4, 25) = 0.145131E+01 +PKER_RDRYG( 4, 26) = 0.147642E+01 +PKER_RDRYG( 4, 27) = 0.149706E+01 +PKER_RDRYG( 4, 28) = 0.151403E+01 +PKER_RDRYG( 4, 29) = 0.152800E+01 +PKER_RDRYG( 4, 30) = 0.153950E+01 +PKER_RDRYG( 4, 31) = 0.154897E+01 +PKER_RDRYG( 4, 32) = 0.155678E+01 +PKER_RDRYG( 4, 33) = 0.156321E+01 +PKER_RDRYG( 4, 34) = 0.156851E+01 +PKER_RDRYG( 4, 35) = 0.157288E+01 +PKER_RDRYG( 4, 36) = 0.157649E+01 +PKER_RDRYG( 4, 37) = 0.157946E+01 +PKER_RDRYG( 4, 38) = 0.158192E+01 +PKER_RDRYG( 4, 39) = 0.158394E+01 +PKER_RDRYG( 4, 40) = 0.158562E+01 +PKER_RDRYG( 5, 1) = 0.146477E+02 +PKER_RDRYG( 5, 2) = 0.119175E+02 +PKER_RDRYG( 5, 3) = 0.965028E+01 +PKER_RDRYG( 5, 4) = 0.776596E+01 +PKER_RDRYG( 5, 5) = 0.619837E+01 +PKER_RDRYG( 5, 6) = 0.489342E+01 +PKER_RDRYG( 5, 7) = 0.380757E+01 +PKER_RDRYG( 5, 8) = 0.290717E+01 +PKER_RDRYG( 5, 9) = 0.216844E+01 +PKER_RDRYG( 5, 10) = 0.157730E+01 +PKER_RDRYG( 5, 11) = 0.112773E+01 +PKER_RDRYG( 5, 12) = 0.815273E+00 +PKER_RDRYG( 5, 13) = 0.632305E+00 +PKER_RDRYG( 5, 14) = 0.560193E+00 +PKER_RDRYG( 5, 15) = 0.571354E+00 +PKER_RDRYG( 5, 16) = 0.634685E+00 +PKER_RDRYG( 5, 17) = 0.723003E+00 +PKER_RDRYG( 5, 18) = 0.816915E+00 +PKER_RDRYG( 5, 19) = 0.905398E+00 +PKER_RDRYG( 5, 20) = 0.983467E+00 +PKER_RDRYG( 5, 21) = 0.104994E+01 +PKER_RDRYG( 5, 22) = 0.110547E+01 +PKER_RDRYG( 5, 23) = 0.115137E+01 +PKER_RDRYG( 5, 24) = 0.118909E+01 +PKER_RDRYG( 5, 25) = 0.122003E+01 +PKER_RDRYG( 5, 26) = 0.124544E+01 +PKER_RDRYG( 5, 27) = 0.126630E+01 +PKER_RDRYG( 5, 28) = 0.128345E+01 +PKER_RDRYG( 5, 29) = 0.129755E+01 +PKER_RDRYG( 5, 30) = 0.130915E+01 +PKER_RDRYG( 5, 31) = 0.131870E+01 +PKER_RDRYG( 5, 32) = 0.132657E+01 +PKER_RDRYG( 5, 33) = 0.133305E+01 +PKER_RDRYG( 5, 34) = 0.133839E+01 +PKER_RDRYG( 5, 35) = 0.134279E+01 +PKER_RDRYG( 5, 36) = 0.134641E+01 +PKER_RDRYG( 5, 37) = 0.134941E+01 +PKER_RDRYG( 5, 38) = 0.135188E+01 +PKER_RDRYG( 5, 39) = 0.135391E+01 +PKER_RDRYG( 5, 40) = 0.135559E+01 +PKER_RDRYG( 6, 1) = 0.148285E+02 +PKER_RDRYG( 6, 2) = 0.121043E+02 +PKER_RDRYG( 6, 3) = 0.984376E+01 +PKER_RDRYG( 6, 4) = 0.796646E+01 +PKER_RDRYG( 6, 5) = 0.640602E+01 +PKER_RDRYG( 6, 6) = 0.510770E+01 +PKER_RDRYG( 6, 7) = 0.402676E+01 +PKER_RDRYG( 6, 8) = 0.312733E+01 +PKER_RDRYG( 6, 9) = 0.238192E+01 +PKER_RDRYG( 6, 10) = 0.177145E+01 +PKER_RDRYG( 6, 11) = 0.128511E+01 +PKER_RDRYG( 6, 12) = 0.918271E+00 +PKER_RDRYG( 6, 13) = 0.668096E+00 +PKER_RDRYG( 6, 14) = 0.526360E+00 +PKER_RDRYG( 6, 15) = 0.476580E+00 +PKER_RDRYG( 6, 16) = 0.494226E+00 +PKER_RDRYG( 6, 17) = 0.552847E+00 +PKER_RDRYG( 6, 18) = 0.630007E+00 +PKER_RDRYG( 6, 19) = 0.710312E+00 +PKER_RDRYG( 6, 20) = 0.784988E+00 +PKER_RDRYG( 6, 21) = 0.850444E+00 +PKER_RDRYG( 6, 22) = 0.905977E+00 +PKER_RDRYG( 6, 23) = 0.952261E+00 +PKER_RDRYG( 6, 24) = 0.990455E+00 +PKER_RDRYG( 6, 25) = 0.102182E+01 +PKER_RDRYG( 6, 26) = 0.104755E+01 +PKER_RDRYG( 6, 27) = 0.106866E+01 +PKER_RDRYG( 6, 28) = 0.108600E+01 +PKER_RDRYG( 6, 29) = 0.110024E+01 +PKER_RDRYG( 6, 30) = 0.111196E+01 +PKER_RDRYG( 6, 31) = 0.112160E+01 +PKER_RDRYG( 6, 32) = 0.112953E+01 +PKER_RDRYG( 6, 33) = 0.113606E+01 +PKER_RDRYG( 6, 34) = 0.114144E+01 +PKER_RDRYG( 6, 35) = 0.114587E+01 +PKER_RDRYG( 6, 36) = 0.114953E+01 +PKER_RDRYG( 6, 37) = 0.115254E+01 +PKER_RDRYG( 6, 38) = 0.115502E+01 +PKER_RDRYG( 6, 39) = 0.115707E+01 +PKER_RDRYG( 6, 40) = 0.115876E+01 +PKER_RDRYG( 7, 1) = 0.149770E+02 +PKER_RDRYG( 7, 2) = 0.122574E+02 +PKER_RDRYG( 7, 3) = 0.100019E+02 +PKER_RDRYG( 7, 4) = 0.813025E+01 +PKER_RDRYG( 7, 5) = 0.657577E+01 +PKER_RDRYG( 7, 6) = 0.528352E+01 +PKER_RDRYG( 7, 7) = 0.420821E+01 +PKER_RDRYG( 7, 8) = 0.331283E+01 +PKER_RDRYG( 7, 9) = 0.256784E+01 +PKER_RDRYG( 7, 10) = 0.195082E+01 +PKER_RDRYG( 7, 11) = 0.144657E+01 +PKER_RDRYG( 7, 12) = 0.104687E+01 +PKER_RDRYG( 7, 13) = 0.748356E+00 +PKER_RDRYG( 7, 14) = 0.548446E+00 +PKER_RDRYG( 7, 15) = 0.439652E+00 +PKER_RDRYG( 7, 16) = 0.406642E+00 +PKER_RDRYG( 7, 17) = 0.428019E+00 +PKER_RDRYG( 7, 18) = 0.481606E+00 +PKER_RDRYG( 7, 19) = 0.548855E+00 +PKER_RDRYG( 7, 20) = 0.617296E+00 +PKER_RDRYG( 7, 21) = 0.680279E+00 +PKER_RDRYG( 7, 22) = 0.735137E+00 +PKER_RDRYG( 7, 23) = 0.781510E+00 +PKER_RDRYG( 7, 24) = 0.820079E+00 +PKER_RDRYG( 7, 25) = 0.851863E+00 +PKER_RDRYG( 7, 26) = 0.877947E+00 +PKER_RDRYG( 7, 27) = 0.899335E+00 +PKER_RDRYG( 7, 28) = 0.916884E+00 +PKER_RDRYG( 7, 29) = 0.931293E+00 +PKER_RDRYG( 7, 30) = 0.943132E+00 +PKER_RDRYG( 7, 31) = 0.952865E+00 +PKER_RDRYG( 7, 32) = 0.960872E+00 +PKER_RDRYG( 7, 33) = 0.967460E+00 +PKER_RDRYG( 7, 34) = 0.972885E+00 +PKER_RDRYG( 7, 35) = 0.977352E+00 +PKER_RDRYG( 7, 36) = 0.981033E+00 +PKER_RDRYG( 7, 37) = 0.984066E+00 +PKER_RDRYG( 7, 38) = 0.986565E+00 +PKER_RDRYG( 7, 39) = 0.988627E+00 +PKER_RDRYG( 7, 40) = 0.990326E+00 +PKER_RDRYG( 8, 1) = 0.150992E+02 +PKER_RDRYG( 8, 2) = 0.123831E+02 +PKER_RDRYG( 8, 3) = 0.101315E+02 +PKER_RDRYG( 8, 4) = 0.826417E+01 +PKER_RDRYG( 8, 5) = 0.671445E+01 +PKER_RDRYG( 8, 6) = 0.542727E+01 +PKER_RDRYG( 8, 7) = 0.435711E+01 +PKER_RDRYG( 8, 8) = 0.346649E+01 +PKER_RDRYG( 8, 9) = 0.272482E+01 +PKER_RDRYG( 8, 10) = 0.210780E+01 +PKER_RDRYG( 8, 11) = 0.159717E+01 +PKER_RDRYG( 8, 12) = 0.118083E+01 +PKER_RDRYG( 8, 13) = 0.852650E+00 +PKER_RDRYG( 8, 14) = 0.610124E+00 +PKER_RDRYG( 8, 15) = 0.451060E+00 +PKER_RDRYG( 8, 16) = 0.368291E+00 +PKER_RDRYG( 8, 17) = 0.347823E+00 +PKER_RDRYG( 8, 18) = 0.371281E+00 +PKER_RDRYG( 8, 19) = 0.419706E+00 +PKER_RDRYG( 8, 20) = 0.477953E+00 +PKER_RDRYG( 8, 21) = 0.536200E+00 +PKER_RDRYG( 8, 22) = 0.589265E+00 +PKER_RDRYG( 8, 23) = 0.635216E+00 +PKER_RDRYG( 8, 24) = 0.673937E+00 +PKER_RDRYG( 8, 25) = 0.706074E+00 +PKER_RDRYG( 8, 26) = 0.732525E+00 +PKER_RDRYG( 8, 27) = 0.754218E+00 +PKER_RDRYG( 8, 28) = 0.772002E+00 +PKER_RDRYG( 8, 29) = 0.786590E+00 +PKER_RDRYG( 8, 30) = 0.798567E+00 +PKER_RDRYG( 8, 31) = 0.808406E+00 +PKER_RDRYG( 8, 32) = 0.816494E+00 +PKER_RDRYG( 8, 33) = 0.823145E+00 +PKER_RDRYG( 8, 34) = 0.828619E+00 +PKER_RDRYG( 8, 35) = 0.833124E+00 +PKER_RDRYG( 8, 36) = 0.836834E+00 +PKER_RDRYG( 8, 37) = 0.839890E+00 +PKER_RDRYG( 8, 38) = 0.842408E+00 +PKER_RDRYG( 8, 39) = 0.844484E+00 +PKER_RDRYG( 8, 40) = 0.846195E+00 +PKER_RDRYG( 9, 1) = 0.152001E+02 +PKER_RDRYG( 9, 2) = 0.124866E+02 +PKER_RDRYG( 9, 3) = 0.102380E+02 +PKER_RDRYG( 9, 4) = 0.837392E+01 +PKER_RDRYG( 9, 5) = 0.682786E+01 +PKER_RDRYG( 9, 6) = 0.554471E+01 +PKER_RDRYG( 9, 7) = 0.447886E+01 +PKER_RDRYG( 9, 8) = 0.359262E+01 +PKER_RDRYG( 9, 9) = 0.285496E+01 +PKER_RDRYG( 9, 10) = 0.224062E+01 +PKER_RDRYG( 9, 11) = 0.172961E+01 +PKER_RDRYG( 9, 12) = 0.130712E+01 +PKER_RDRYG( 9, 13) = 0.963568E+00 +PKER_RDRYG( 9, 14) = 0.694236E+00 +PKER_RDRYG( 9, 15) = 0.497828E+00 +PKER_RDRYG( 9, 16) = 0.371725E+00 +PKER_RDRYG( 9, 17) = 0.309284E+00 +PKER_RDRYG( 9, 18) = 0.298254E+00 +PKER_RDRYG( 9, 19) = 0.322338E+00 +PKER_RDRYG( 9, 20) = 0.365743E+00 +PKER_RDRYG( 9, 21) = 0.416082E+00 +PKER_RDRYG( 9, 22) = 0.465554E+00 +PKER_RDRYG( 9, 23) = 0.510205E+00 +PKER_RDRYG( 9, 24) = 0.548676E+00 +PKER_RDRYG( 9, 25) = 0.581002E+00 +PKER_RDRYG( 9, 26) = 0.607778E+00 +PKER_RDRYG( 9, 27) = 0.629790E+00 +PKER_RDRYG( 9, 28) = 0.647834E+00 +PKER_RDRYG( 9, 29) = 0.662622E+00 +PKER_RDRYG( 9, 30) = 0.674751E+00 +PKER_RDRYG( 9, 31) = 0.684707E+00 +PKER_RDRYG( 9, 32) = 0.692884E+00 +PKER_RDRYG( 9, 33) = 0.699606E+00 +PKER_RDRYG( 9, 34) = 0.705133E+00 +PKER_RDRYG( 9, 35) = 0.709680E+00 +PKER_RDRYG( 9, 36) = 0.713422E+00 +PKER_RDRYG( 9, 37) = 0.716504E+00 +PKER_RDRYG( 9, 38) = 0.719042E+00 +PKER_RDRYG( 9, 39) = 0.721132E+00 +PKER_RDRYG( 9, 40) = 0.722855E+00 +PKER_RDRYG( 10, 1) = 0.152836E+02 +PKER_RDRYG( 10, 2) = 0.125721E+02 +PKER_RDRYG( 10, 3) = 0.103257E+02 +PKER_RDRYG( 10, 4) = 0.846410E+01 +PKER_RDRYG( 10, 5) = 0.692082E+01 +PKER_RDRYG( 10, 6) = 0.564078E+01 +PKER_RDRYG( 10, 7) = 0.457835E+01 +PKER_RDRYG( 10, 8) = 0.369576E+01 +PKER_RDRYG( 10, 9) = 0.296182E+01 +PKER_RDRYG( 10, 10) = 0.235084E+01 +PKER_RDRYG( 10, 11) = 0.184198E+01 +PKER_RDRYG( 10, 12) = 0.141881E+01 +PKER_RDRYG( 10, 13) = 0.106933E+01 +PKER_RDRYG( 10, 14) = 0.786016E+00 +PKER_RDRYG( 10, 15) = 0.565474E+00 +PKER_RDRYG( 10, 16) = 0.406543E+00 +PKER_RDRYG( 10, 17) = 0.307053E+00 +PKER_RDRYG( 10, 18) = 0.260725E+00 +PKER_RDRYG( 10, 19) = 0.256389E+00 +PKER_RDRYG( 10, 20) = 0.280106E+00 +PKER_RDRYG( 10, 21) = 0.318661E+00 +PKER_RDRYG( 10, 22) = 0.362054E+00 +PKER_RDRYG( 10, 23) = 0.404004E+00 +PKER_RDRYG( 10, 24) = 0.441559E+00 +PKER_RDRYG( 10, 25) = 0.473763E+00 +PKER_RDRYG( 10, 26) = 0.500741E+00 +PKER_RDRYG( 10, 27) = 0.523049E+00 +PKER_RDRYG( 10, 28) = 0.541369E+00 +PKER_RDRYG( 10, 29) = 0.556378E+00 +PKER_RDRYG( 10, 30) = 0.568677E+00 +PKER_RDRYG( 10, 31) = 0.578762E+00 +PKER_RDRYG( 10, 32) = 0.587040E+00 +PKER_RDRYG( 10, 33) = 0.593837E+00 +PKER_RDRYG( 10, 34) = 0.599424E+00 +PKER_RDRYG( 10, 35) = 0.604017E+00 +PKER_RDRYG( 10, 36) = 0.607795E+00 +PKER_RDRYG( 10, 37) = 0.610904E+00 +PKER_RDRYG( 10, 38) = 0.613463E+00 +PKER_RDRYG( 10, 39) = 0.615571E+00 +PKER_RDRYG( 10, 40) = 0.617307E+00 +PKER_RDRYG( 11, 1) = 0.153530E+02 +PKER_RDRYG( 11, 2) = 0.126429E+02 +PKER_RDRYG( 11, 3) = 0.103982E+02 +PKER_RDRYG( 11, 4) = 0.853842E+01 +PKER_RDRYG( 11, 5) = 0.699724E+01 +PKER_RDRYG( 11, 6) = 0.571954E+01 +PKER_RDRYG( 11, 7) = 0.465974E+01 +PKER_RDRYG( 11, 8) = 0.378005E+01 +PKER_RDRYG( 11, 9) = 0.304921E+01 +PKER_RDRYG( 11, 10) = 0.244139E+01 +PKER_RDRYG( 11, 11) = 0.193535E+01 +PKER_RDRYG( 11, 12) = 0.151386E+01 +PKER_RDRYG( 11, 13) = 0.116347E+01 +PKER_RDRYG( 11, 14) = 0.874451E+00 +PKER_RDRYG( 11, 15) = 0.640975E+00 +PKER_RDRYG( 11, 16) = 0.460649E+00 +PKER_RDRYG( 11, 17) = 0.332340E+00 +PKER_RDRYG( 11, 18) = 0.254216E+00 +PKER_RDRYG( 11, 19) = 0.220358E+00 +PKER_RDRYG( 11, 20) = 0.220732E+00 +PKER_RDRYG( 11, 21) = 0.243530E+00 +PKER_RDRYG( 11, 22) = 0.277653E+00 +PKER_RDRYG( 11, 23) = 0.314885E+00 +PKER_RDRYG( 11, 24) = 0.350439E+00 +PKER_RDRYG( 11, 25) = 0.381996E+00 +PKER_RDRYG( 11, 26) = 0.408939E+00 +PKER_RDRYG( 11, 27) = 0.431452E+00 +PKER_RDRYG( 11, 28) = 0.450036E+00 +PKER_RDRYG( 11, 29) = 0.465283E+00 +PKER_RDRYG( 11, 30) = 0.477770E+00 +PKER_RDRYG( 11, 31) = 0.488000E+00 +PKER_RDRYG( 11, 32) = 0.496387E+00 +PKER_RDRYG( 11, 33) = 0.503270E+00 +PKER_RDRYG( 11, 34) = 0.508921E+00 +PKER_RDRYG( 11, 35) = 0.513565E+00 +PKER_RDRYG( 11, 36) = 0.517382E+00 +PKER_RDRYG( 11, 37) = 0.520521E+00 +PKER_RDRYG( 11, 38) = 0.523104E+00 +PKER_RDRYG( 11, 39) = 0.525230E+00 +PKER_RDRYG( 11, 40) = 0.526981E+00 +PKER_RDRYG( 12, 1) = 0.154107E+02 +PKER_RDRYG( 12, 2) = 0.127017E+02 +PKER_RDRYG( 12, 3) = 0.104582E+02 +PKER_RDRYG( 12, 4) = 0.859986E+01 +PKER_RDRYG( 12, 5) = 0.706024E+01 +PKER_RDRYG( 12, 6) = 0.578430E+01 +PKER_RDRYG( 12, 7) = 0.472649E+01 +PKER_RDRYG( 12, 8) = 0.384903E+01 +PKER_RDRYG( 12, 9) = 0.312065E+01 +PKER_RDRYG( 12, 10) = 0.251546E+01 +PKER_RDRYG( 12, 11) = 0.201208E+01 +PKER_RDRYG( 12, 12) = 0.159294E+01 +PKER_RDRYG( 12, 13) = 0.124384E+01 +PKER_RDRYG( 12, 14) = 0.953734E+00 +PKER_RDRYG( 12, 15) = 0.714822E+00 +PKER_RDRYG( 12, 16) = 0.522561E+00 +PKER_RDRYG( 12, 17) = 0.375074E+00 +PKER_RDRYG( 12, 18) = 0.271992E+00 +PKER_RDRYG( 12, 19) = 0.210994E+00 +PKER_RDRYG( 12, 20) = 0.186793E+00 +PKER_RDRYG( 12, 21) = 0.190524E+00 +PKER_RDRYG( 12, 22) = 0.211914E+00 +PKER_RDRYG( 12, 23) = 0.241853E+00 +PKER_RDRYG( 12, 24) = 0.273771E+00 +PKER_RDRYG( 12, 25) = 0.303824E+00 +PKER_RDRYG( 12, 26) = 0.330330E+00 +PKER_RDRYG( 12, 27) = 0.352868E+00 +PKER_RDRYG( 12, 28) = 0.371654E+00 +PKER_RDRYG( 12, 29) = 0.387136E+00 +PKER_RDRYG( 12, 30) = 0.399827E+00 +PKER_RDRYG( 12, 31) = 0.410216E+00 +PKER_RDRYG( 12, 32) = 0.418726E+00 +PKER_RDRYG( 12, 33) = 0.425702E+00 +PKER_RDRYG( 12, 34) = 0.431426E+00 +PKER_RDRYG( 12, 35) = 0.436125E+00 +PKER_RDRYG( 12, 36) = 0.439985E+00 +PKER_RDRYG( 12, 37) = 0.443157E+00 +PKER_RDRYG( 12, 38) = 0.445766E+00 +PKER_RDRYG( 12, 39) = 0.447913E+00 +PKER_RDRYG( 12, 40) = 0.449679E+00 +PKER_RDRYG( 13, 1) = 0.154588E+02 +PKER_RDRYG( 13, 2) = 0.127507E+02 +PKER_RDRYG( 13, 3) = 0.105081E+02 +PKER_RDRYG( 13, 4) = 0.865080E+01 +PKER_RDRYG( 13, 5) = 0.711233E+01 +PKER_RDRYG( 13, 6) = 0.583772E+01 +PKER_RDRYG( 13, 7) = 0.478139E+01 +PKER_RDRYG( 13, 8) = 0.390560E+01 +PKER_RDRYG( 13, 9) = 0.317911E+01 +PKER_RDRYG( 13, 10) = 0.257601E+01 +PKER_RDRYG( 13, 11) = 0.207487E+01 +PKER_RDRYG( 13, 12) = 0.165798E+01 +PKER_RDRYG( 13, 13) = 0.131083E+01 +PKER_RDRYG( 13, 14) = 0.102169E+01 +PKER_RDRYG( 13, 15) = 0.781536E+00 +PKER_RDRYG( 13, 16) = 0.584105E+00 +PKER_RDRYG( 13, 17) = 0.425921E+00 +PKER_RDRYG( 13, 18) = 0.305717E+00 +PKER_RDRYG( 13, 19) = 0.222926E+00 +PKER_RDRYG( 13, 20) = 0.175670E+00 +PKER_RDRYG( 13, 21) = 0.158795E+00 +PKER_RDRYG( 13, 22) = 0.164617E+00 +PKER_RDRYG( 13, 23) = 0.184416E+00 +PKER_RDRYG( 13, 24) = 0.210615E+00 +PKER_RDRYG( 13, 25) = 0.237900E+00 +PKER_RDRYG( 13, 26) = 0.263298E+00 +PKER_RDRYG( 13, 27) = 0.285545E+00 +PKER_RDRYG( 13, 28) = 0.304391E+00 +PKER_RDRYG( 13, 29) = 0.320063E+00 +PKER_RDRYG( 13, 30) = 0.332961E+00 +PKER_RDRYG( 13, 31) = 0.343525E+00 +PKER_RDRYG( 13, 32) = 0.352171E+00 +PKER_RDRYG( 13, 33) = 0.359251E+00 +PKER_RDRYG( 13, 34) = 0.365054E+00 +PKER_RDRYG( 13, 35) = 0.369814E+00 +PKER_RDRYG( 13, 36) = 0.373722E+00 +PKER_RDRYG( 13, 37) = 0.376931E+00 +PKER_RDRYG( 13, 38) = 0.379569E+00 +PKER_RDRYG( 13, 39) = 0.381737E+00 +PKER_RDRYG( 13, 40) = 0.383521E+00 +PKER_RDRYG( 14, 1) = 0.154991E+02 +PKER_RDRYG( 14, 2) = 0.127916E+02 +PKER_RDRYG( 14, 3) = 0.105497E+02 +PKER_RDRYG( 14, 4) = 0.869314E+01 +PKER_RDRYG( 14, 5) = 0.715554E+01 +PKER_RDRYG( 14, 6) = 0.588191E+01 +PKER_RDRYG( 14, 7) = 0.482668E+01 +PKER_RDRYG( 14, 8) = 0.395215E+01 +PKER_RDRYG( 14, 9) = 0.322708E+01 +PKER_RDRYG( 14, 10) = 0.262557E+01 +PKER_RDRYG( 14, 11) = 0.212620E+01 +PKER_RDRYG( 14, 12) = 0.171122E+01 +PKER_RDRYG( 14, 13) = 0.136596E+01 +PKER_RDRYG( 14, 14) = 0.107842E+01 +PKER_RDRYG( 14, 15) = 0.838958E+00 +PKER_RDRYG( 14, 16) = 0.640183E+00 +PKER_RDRYG( 14, 17) = 0.477107E+00 +PKER_RDRYG( 14, 18) = 0.347057E+00 +PKER_RDRYG( 14, 19) = 0.249165E+00 +PKER_RDRYG( 14, 20) = 0.183013E+00 +PKER_RDRYG( 14, 21) = 0.146601E+00 +PKER_RDRYG( 14, 22) = 0.135353E+00 +PKER_RDRYG( 14, 23) = 0.142468E+00 +PKER_RDRYG( 14, 24) = 0.160555E+00 +PKER_RDRYG( 14, 25) = 0.183354E+00 +PKER_RDRYG( 14, 26) = 0.206635E+00 +PKER_RDRYG( 14, 27) = 0.228070E+00 +PKER_RDRYG( 14, 28) = 0.246738E+00 +PKER_RDRYG( 14, 29) = 0.262495E+00 +PKER_RDRYG( 14, 30) = 0.275569E+00 +PKER_RDRYG( 14, 31) = 0.286313E+00 +PKER_RDRYG( 14, 32) = 0.295107E+00 +PKER_RDRYG( 14, 33) = 0.302303E+00 +PKER_RDRYG( 14, 34) = 0.308195E+00 +PKER_RDRYG( 14, 35) = 0.313023E+00 +PKER_RDRYG( 14, 36) = 0.316982E+00 +PKER_RDRYG( 14, 37) = 0.320232E+00 +PKER_RDRYG( 14, 38) = 0.322901E+00 +PKER_RDRYG( 14, 39) = 0.325094E+00 +PKER_RDRYG( 14, 40) = 0.326896E+00 +PKER_RDRYG( 15, 1) = 0.155328E+02 +PKER_RDRYG( 15, 2) = 0.128258E+02 +PKER_RDRYG( 15, 3) = 0.105844E+02 +PKER_RDRYG( 15, 4) = 0.872843E+01 +PKER_RDRYG( 15, 5) = 0.719148E+01 +PKER_RDRYG( 15, 6) = 0.591857E+01 +PKER_RDRYG( 15, 7) = 0.486417E+01 +PKER_RDRYG( 15, 8) = 0.399057E+01 +PKER_RDRYG( 15, 9) = 0.326656E+01 +PKER_RDRYG( 15, 10) = 0.266625E+01 +PKER_RDRYG( 15, 11) = 0.216823E+01 +PKER_RDRYG( 15, 12) = 0.175475E+01 +PKER_RDRYG( 15, 13) = 0.141110E+01 +PKER_RDRYG( 15, 14) = 0.112517E+01 +PKER_RDRYG( 15, 15) = 0.887014E+00 +PKER_RDRYG( 15, 16) = 0.688694E+00 +PKER_RDRYG( 15, 17) = 0.524210E+00 +PKER_RDRYG( 15, 18) = 0.389564E+00 +PKER_RDRYG( 15, 19) = 0.282710E+00 +PKER_RDRYG( 15, 20) = 0.203209E+00 +PKER_RDRYG( 15, 21) = 0.150500E+00 +PKER_RDRYG( 15, 22) = 0.122720E+00 +PKER_RDRYG( 15, 23) = 0.115684E+00 +PKER_RDRYG( 15, 24) = 0.123454E+00 +PKER_RDRYG( 15, 25) = 0.139800E+00 +PKER_RDRYG( 15, 26) = 0.159573E+00 +PKER_RDRYG( 15, 27) = 0.179400E+00 +PKER_RDRYG( 15, 28) = 0.197477E+00 +PKER_RDRYG( 15, 29) = 0.213128E+00 +PKER_RDRYG( 15, 30) = 0.226299E+00 +PKER_RDRYG( 15, 31) = 0.237204E+00 +PKER_RDRYG( 15, 32) = 0.246155E+00 +PKER_RDRYG( 15, 33) = 0.253478E+00 +PKER_RDRYG( 15, 34) = 0.259467E+00 +PKER_RDRYG( 15, 35) = 0.264371E+00 +PKER_RDRYG( 15, 36) = 0.268388E+00 +PKER_RDRYG( 15, 37) = 0.271682E+00 +PKER_RDRYG( 15, 38) = 0.274385E+00 +PKER_RDRYG( 15, 39) = 0.276605E+00 +PKER_RDRYG( 15, 40) = 0.278428E+00 +PKER_RDRYG( 16, 1) = 0.155611E+02 +PKER_RDRYG( 16, 2) = 0.128544E+02 +PKER_RDRYG( 16, 3) = 0.106134E+02 +PKER_RDRYG( 16, 4) = 0.875790E+01 +PKER_RDRYG( 16, 5) = 0.722144E+01 +PKER_RDRYG( 16, 6) = 0.594908E+01 +PKER_RDRYG( 16, 7) = 0.489528E+01 +PKER_RDRYG( 16, 8) = 0.402238E+01 +PKER_RDRYG( 16, 9) = 0.329915E+01 +PKER_RDRYG( 16, 10) = 0.269974E+01 +PKER_RDRYG( 16, 11) = 0.220274E+01 +PKER_RDRYG( 16, 12) = 0.179040E+01 +PKER_RDRYG( 16, 13) = 0.144802E+01 +PKER_RDRYG( 16, 14) = 0.116345E+01 +PKER_RDRYG( 16, 15) = 0.926641E+00 +PKER_RDRYG( 16, 16) = 0.729392E+00 +PKER_RDRYG( 16, 17) = 0.565165E+00 +PKER_RDRYG( 16, 18) = 0.429078E+00 +PKER_RDRYG( 16, 19) = 0.317968E+00 +PKER_RDRYG( 16, 20) = 0.230366E+00 +PKER_RDRYG( 16, 21) = 0.165832E+00 +PKER_RDRYG( 16, 22) = 0.123999E+00 +PKER_RDRYG( 16, 23) = 0.102998E+00 +PKER_RDRYG( 16, 24) = 0.991169E-01 +PKER_RDRYG( 16, 25) = 0.107099E+00 +PKER_RDRYG( 16, 26) = 0.121727E+00 +PKER_RDRYG( 16, 27) = 0.138829E+00 +PKER_RDRYG( 16, 28) = 0.155681E+00 +PKER_RDRYG( 16, 29) = 0.170911E+00 +PKER_RDRYG( 16, 30) = 0.184033E+00 +PKER_RDRYG( 16, 31) = 0.195040E+00 +PKER_RDRYG( 16, 32) = 0.204136E+00 +PKER_RDRYG( 16, 33) = 0.211593E+00 +PKER_RDRYG( 16, 34) = 0.217691E+00 +PKER_RDRYG( 16, 35) = 0.222677E+00 +PKER_RDRYG( 16, 36) = 0.226759E+00 +PKER_RDRYG( 16, 37) = 0.230102E+00 +PKER_RDRYG( 16, 38) = 0.232843E+00 +PKER_RDRYG( 16, 39) = 0.235091E+00 +PKER_RDRYG( 16, 40) = 0.236937E+00 +PKER_RDRYG( 17, 1) = 0.155848E+02 +PKER_RDRYG( 17, 2) = 0.128785E+02 +PKER_RDRYG( 17, 3) = 0.106378E+02 +PKER_RDRYG( 17, 4) = 0.878258E+01 +PKER_RDRYG( 17, 5) = 0.724648E+01 +PKER_RDRYG( 17, 6) = 0.597452E+01 +PKER_RDRYG( 17, 7) = 0.492118E+01 +PKER_RDRYG( 17, 8) = 0.404879E+01 +PKER_RDRYG( 17, 9) = 0.332615E+01 +PKER_RDRYG( 17, 10) = 0.272740E+01 +PKER_RDRYG( 17, 11) = 0.223115E+01 +PKER_RDRYG( 17, 12) = 0.181967E+01 +PKER_RDRYG( 17, 13) = 0.147827E+01 +PKER_RDRYG( 17, 14) = 0.119477E+01 +PKER_RDRYG( 17, 15) = 0.959115E+00 +PKER_RDRYG( 17, 16) = 0.762992E+00 +PKER_RDRYG( 17, 17) = 0.599624E+00 +PKER_RDRYG( 17, 18) = 0.463642E+00 +PKER_RDRYG( 17, 19) = 0.351078E+00 +PKER_RDRYG( 17, 20) = 0.259445E+00 +PKER_RDRYG( 17, 21) = 0.187672E+00 +PKER_RDRYG( 17, 22) = 0.135435E+00 +PKER_RDRYG( 17, 23) = 0.102368E+00 +PKER_RDRYG( 17, 24) = 0.867396E-01 +PKER_RDRYG( 17, 25) = 0.850688E-01 +PKER_RDRYG( 17, 26) = 0.929638E-01 +PKER_RDRYG( 17, 27) = 0.105991E+00 +PKER_RDRYG( 17, 28) = 0.120728E+00 +PKER_RDRYG( 17, 29) = 0.135039E+00 +PKER_RDRYG( 17, 30) = 0.147861E+00 +PKER_RDRYG( 17, 31) = 0.158856E+00 +PKER_RDRYG( 17, 32) = 0.168054E+00 +PKER_RDRYG( 17, 33) = 0.175640E+00 +PKER_RDRYG( 17, 34) = 0.181854E+00 +PKER_RDRYG( 17, 35) = 0.186932E+00 +PKER_RDRYG( 17, 36) = 0.191084E+00 +PKER_RDRYG( 17, 37) = 0.194481E+00 +PKER_RDRYG( 17, 38) = 0.197264E+00 +PKER_RDRYG( 17, 39) = 0.199545E+00 +PKER_RDRYG( 17, 40) = 0.201416E+00 +PKER_RDRYG( 18, 1) = 0.156048E+02 +PKER_RDRYG( 18, 2) = 0.128987E+02 +PKER_RDRYG( 18, 3) = 0.106582E+02 +PKER_RDRYG( 18, 4) = 0.880327E+01 +PKER_RDRYG( 18, 5) = 0.726745E+01 +PKER_RDRYG( 18, 6) = 0.599579E+01 +PKER_RDRYG( 18, 7) = 0.494280E+01 +PKER_RDRYG( 18, 8) = 0.407079E+01 +PKER_RDRYG( 18, 9) = 0.334857E+01 +PKER_RDRYG( 18, 10) = 0.275031E+01 +PKER_RDRYG( 18, 11) = 0.225462E+01 +PKER_RDRYG( 18, 12) = 0.184378E+01 +PKER_RDRYG( 18, 13) = 0.150310E+01 +PKER_RDRYG( 18, 14) = 0.122043E+01 +PKER_RDRYG( 18, 15) = 0.985691E+00 +PKER_RDRYG( 18, 16) = 0.790542E+00 +PKER_RDRYG( 18, 17) = 0.628114E+00 +PKER_RDRYG( 18, 18) = 0.492811E+00 +PKER_RDRYG( 18, 19) = 0.380219E+00 +PKER_RDRYG( 18, 20) = 0.287142E+00 +PKER_RDRYG( 18, 21) = 0.211629E+00 +PKER_RDRYG( 18, 22) = 0.152851E+00 +PKER_RDRYG( 18, 23) = 0.110724E+00 +PKER_RDRYG( 18, 24) = 0.847137E-01 +PKER_RDRYG( 18, 25) = 0.732323E-01 +PKER_RDRYG( 18, 26) = 0.732076E-01 +PKER_RDRYG( 18, 27) = 0.807748E-01 +PKER_RDRYG( 18, 28) = 0.922834E-01 +PKER_RDRYG( 18, 29) = 0.104948E+00 +PKER_RDRYG( 18, 30) = 0.117078E+00 +PKER_RDRYG( 18, 31) = 0.127868E+00 +PKER_RDRYG( 18, 32) = 0.137079E+00 +PKER_RDRYG( 18, 33) = 0.144764E+00 +PKER_RDRYG( 18, 34) = 0.151091E+00 +PKER_RDRYG( 18, 35) = 0.156269E+00 +PKER_RDRYG( 18, 36) = 0.160499E+00 +PKER_RDRYG( 18, 37) = 0.163956E+00 +PKER_RDRYG( 18, 38) = 0.166785E+00 +PKER_RDRYG( 18, 39) = 0.169102E+00 +PKER_RDRYG( 18, 40) = 0.171000E+00 +PKER_RDRYG( 19, 1) = 0.156217E+02 +PKER_RDRYG( 19, 2) = 0.129157E+02 +PKER_RDRYG( 19, 3) = 0.106754E+02 +PKER_RDRYG( 19, 4) = 0.882064E+01 +PKER_RDRYG( 19, 5) = 0.728503E+01 +PKER_RDRYG( 19, 6) = 0.601361E+01 +PKER_RDRYG( 19, 7) = 0.496087E+01 +PKER_RDRYG( 19, 8) = 0.408915E+01 +PKER_RDRYG( 19, 9) = 0.336725E+01 +PKER_RDRYG( 19, 10) = 0.276936E+01 +PKER_RDRYG( 19, 11) = 0.227408E+01 +PKER_RDRYG( 19, 12) = 0.186371E+01 +PKER_RDRYG( 19, 13) = 0.152357E+01 +PKER_RDRYG( 19, 14) = 0.124151E+01 +PKER_RDRYG( 19, 15) = 0.100747E+01 +PKER_RDRYG( 19, 16) = 0.813095E+00 +PKER_RDRYG( 19, 17) = 0.651490E+00 +PKER_RDRYG( 19, 18) = 0.516968E+00 +PKER_RDRYG( 19, 19) = 0.404911E+00 +PKER_RDRYG( 19, 20) = 0.311706E+00 +PKER_RDRYG( 19, 21) = 0.234763E+00 +PKER_RDRYG( 19, 22) = 0.172575E+00 +PKER_RDRYG( 19, 23) = 0.124563E+00 +PKER_RDRYG( 19, 24) = 0.906076E-01 +PKER_RDRYG( 19, 25) = 0.702940E-01 +PKER_RDRYG( 19, 26) = 0.620081E-01 +PKER_RDRYG( 19, 27) = 0.630865E-01 +PKER_RDRYG( 19, 28) = 0.702057E-01 +PKER_RDRYG( 19, 29) = 0.803254E-01 +PKER_RDRYG( 19, 30) = 0.911904E-01 +PKER_RDRYG( 19, 31) = 0.101465E+00 +PKER_RDRYG( 19, 32) = 0.110536E+00 +PKER_RDRYG( 19, 33) = 0.118251E+00 +PKER_RDRYG( 19, 34) = 0.124670E+00 +PKER_RDRYG( 19, 35) = 0.129948E+00 +PKER_RDRYG( 19, 36) = 0.134262E+00 +PKER_RDRYG( 19, 37) = 0.137786E+00 +PKER_RDRYG( 19, 38) = 0.140666E+00 +PKER_RDRYG( 19, 39) = 0.143022E+00 +PKER_RDRYG( 19, 40) = 0.144951E+00 +PKER_RDRYG( 20, 1) = 0.156359E+02 +PKER_RDRYG( 20, 2) = 0.129300E+02 +PKER_RDRYG( 20, 3) = 0.106899E+02 +PKER_RDRYG( 20, 4) = 0.883526E+01 +PKER_RDRYG( 20, 5) = 0.729981E+01 +PKER_RDRYG( 20, 6) = 0.602856E+01 +PKER_RDRYG( 20, 7) = 0.497602E+01 +PKER_RDRYG( 20, 8) = 0.410451E+01 +PKER_RDRYG( 20, 9) = 0.338285E+01 +PKER_RDRYG( 20, 10) = 0.278523E+01 +PKER_RDRYG( 20, 11) = 0.229026E+01 +PKER_RDRYG( 20, 12) = 0.188023E+01 +PKER_RDRYG( 20, 13) = 0.154049E+01 +PKER_RDRYG( 20, 14) = 0.125889E+01 +PKER_RDRYG( 20, 15) = 0.102536E+01 +PKER_RDRYG( 20, 16) = 0.831581E+00 +PKER_RDRYG( 20, 17) = 0.670632E+00 +PKER_RDRYG( 20, 18) = 0.536803E+00 +PKER_RDRYG( 20, 19) = 0.425393E+00 +PKER_RDRYG( 20, 20) = 0.332592E+00 +PKER_RDRYG( 20, 21) = 0.255441E+00 +PKER_RDRYG( 20, 22) = 0.191863E+00 +PKER_RDRYG( 20, 23) = 0.140678E+00 +PKER_RDRYG( 20, 24) = 0.101505E+00 +PKER_RDRYG( 20, 25) = 0.742493E-01 +PKER_RDRYG( 20, 26) = 0.584264E-01 +PKER_RDRYG( 20, 27) = 0.526432E-01 +PKER_RDRYG( 20, 28) = 0.544495E-01 +PKER_RDRYG( 20, 29) = 0.610513E-01 +PKER_RDRYG( 20, 30) = 0.699078E-01 +PKER_RDRYG( 20, 31) = 0.792045E-01 +PKER_RDRYG( 20, 32) = 0.878929E-01 +PKER_RDRYG( 20, 33) = 0.955190E-01 +PKER_RDRYG( 20, 34) = 0.101978E+00 +PKER_RDRYG( 20, 35) = 0.107340E+00 +PKER_RDRYG( 20, 36) = 0.111742E+00 +PKER_RDRYG( 20, 37) = 0.115338E+00 +PKER_RDRYG( 20, 38) = 0.118274E+00 +PKER_RDRYG( 20, 39) = 0.120673E+00 +PKER_RDRYG( 20, 40) = 0.122635E+00 +PKER_RDRYG( 21, 1) = 0.156479E+02 +PKER_RDRYG( 21, 2) = 0.129421E+02 +PKER_RDRYG( 21, 3) = 0.107021E+02 +PKER_RDRYG( 21, 4) = 0.884758E+01 +PKER_RDRYG( 21, 5) = 0.731225E+01 +PKER_RDRYG( 21, 6) = 0.604114E+01 +PKER_RDRYG( 21, 7) = 0.498874E+01 +PKER_RDRYG( 21, 8) = 0.411739E+01 +PKER_RDRYG( 21, 9) = 0.339591E+01 +PKER_RDRYG( 21, 10) = 0.279849E+01 +PKER_RDRYG( 21, 11) = 0.230374E+01 +PKER_RDRYG( 21, 12) = 0.189397E+01 +PKER_RDRYG( 21, 13) = 0.155452E+01 +PKER_RDRYG( 21, 14) = 0.127326E+01 +PKER_RDRYG( 21, 15) = 0.104012E+01 +PKER_RDRYG( 21, 16) = 0.846776E+00 +PKER_RDRYG( 21, 17) = 0.686327E+00 +PKER_RDRYG( 21, 18) = 0.553054E+00 +PKER_RDRYG( 21, 19) = 0.442227E+00 +PKER_RDRYG( 21, 20) = 0.349958E+00 +PKER_RDRYG( 21, 21) = 0.273107E+00 +PKER_RDRYG( 21, 22) = 0.209258E+00 +PKER_RDRYG( 21, 23) = 0.156741E+00 +PKER_RDRYG( 21, 24) = 0.114650E+00 +PKER_RDRYG( 21, 25) = 0.827499E-01 +PKER_RDRYG( 21, 26) = 0.609346E-01 +PKER_RDRYG( 21, 27) = 0.487447E-01 +PKER_RDRYG( 21, 28) = 0.448236E-01 +PKER_RDRYG( 21, 29) = 0.470754E-01 +PKER_RDRYG( 21, 30) = 0.531032E-01 +PKER_RDRYG( 21, 31) = 0.608204E-01 +PKER_RDRYG( 21, 32) = 0.687615E-01 +PKER_RDRYG( 21, 33) = 0.761062E-01 +PKER_RDRYG( 21, 34) = 0.825119E-01 +PKER_RDRYG( 21, 35) = 0.879190E-01 +PKER_RDRYG( 21, 36) = 0.923978E-01 +PKER_RDRYG( 21, 37) = 0.960692E-01 +PKER_RDRYG( 21, 38) = 0.990669E-01 +PKER_RDRYG( 21, 39) = 0.101514E+00 +PKER_RDRYG( 21, 40) = 0.103513E+00 +PKER_RDRYG( 22, 1) = 0.156580E+02 +PKER_RDRYG( 22, 2) = 0.129523E+02 +PKER_RDRYG( 22, 3) = 0.107124E+02 +PKER_RDRYG( 22, 4) = 0.885797E+01 +PKER_RDRYG( 22, 5) = 0.732273E+01 +PKER_RDRYG( 22, 6) = 0.605172E+01 +PKER_RDRYG( 22, 7) = 0.499943E+01 +PKER_RDRYG( 22, 8) = 0.412821E+01 +PKER_RDRYG( 22, 9) = 0.340686E+01 +PKER_RDRYG( 22, 10) = 0.280959E+01 +PKER_RDRYG( 22, 11) = 0.231501E+01 +PKER_RDRYG( 22, 12) = 0.190543E+01 +PKER_RDRYG( 22, 13) = 0.156620E+01 +PKER_RDRYG( 22, 14) = 0.128518E+01 +PKER_RDRYG( 22, 15) = 0.105232E+01 +PKER_RDRYG( 22, 16) = 0.859305E+00 +PKER_RDRYG( 22, 17) = 0.699230E+00 +PKER_RDRYG( 22, 18) = 0.566381E+00 +PKER_RDRYG( 22, 19) = 0.456024E+00 +PKER_RDRYG( 22, 20) = 0.364245E+00 +PKER_RDRYG( 22, 21) = 0.287830E+00 +PKER_RDRYG( 22, 22) = 0.224192E+00 +PKER_RDRYG( 22, 23) = 0.171359E+00 +PKER_RDRYG( 22, 24) = 0.128001E+00 +PKER_RDRYG( 22, 25) = 0.934489E-01 +PKER_RDRYG( 22, 26) = 0.674901E-01 +PKER_RDRYG( 22, 27) = 0.500882E-01 +PKER_RDRYG( 22, 28) = 0.407416E-01 +PKER_RDRYG( 22, 29) = 0.382527E-01 +PKER_RDRYG( 22, 30) = 0.407450E-01 +PKER_RDRYG( 22, 31) = 0.462007E-01 +PKER_RDRYG( 22, 32) = 0.529000E-01 +PKER_RDRYG( 22, 33) = 0.596709E-01 +PKER_RDRYG( 22, 34) = 0.658722E-01 +PKER_RDRYG( 22, 35) = 0.712512E-01 +PKER_RDRYG( 22, 36) = 0.757772E-01 +PKER_RDRYG( 22, 37) = 0.795178E-01 +PKER_RDRYG( 22, 38) = 0.825803E-01 +PKER_RDRYG( 22, 39) = 0.850795E-01 +PKER_RDRYG( 22, 40) = 0.871191E-01 +PKER_RDRYG( 23, 1) = 0.156666E+02 +PKER_RDRYG( 23, 2) = 0.129610E+02 +PKER_RDRYG( 23, 3) = 0.107211E+02 +PKER_RDRYG( 23, 4) = 0.886674E+01 +PKER_RDRYG( 23, 5) = 0.733158E+01 +PKER_RDRYG( 23, 6) = 0.606064E+01 +PKER_RDRYG( 23, 7) = 0.500844E+01 +PKER_RDRYG( 23, 8) = 0.413730E+01 +PKER_RDRYG( 23, 9) = 0.341606E+01 +PKER_RDRYG( 23, 10) = 0.281890E+01 +PKER_RDRYG( 23, 11) = 0.232445E+01 +PKER_RDRYG( 23, 12) = 0.191501E+01 +PKER_RDRYG( 23, 13) = 0.157594E+01 +PKER_RDRYG( 23, 14) = 0.129510E+01 +PKER_RDRYG( 23, 15) = 0.106245E+01 +PKER_RDRYG( 23, 16) = 0.869674E+00 +PKER_RDRYG( 23, 17) = 0.709873E+00 +PKER_RDRYG( 23, 18) = 0.577340E+00 +PKER_RDRYG( 23, 19) = 0.467343E+00 +PKER_RDRYG( 23, 20) = 0.375961E+00 +PKER_RDRYG( 23, 21) = 0.299956E+00 +PKER_RDRYG( 23, 22) = 0.236671E+00 +PKER_RDRYG( 23, 23) = 0.183979E+00 +PKER_RDRYG( 23, 24) = 0.140272E+00 +PKER_RDRYG( 23, 25) = 0.104494E+00 +PKER_RDRYG( 23, 26) = 0.761340E-01 +PKER_RDRYG( 23, 27) = 0.550738E-01 +PKER_RDRYG( 23, 28) = 0.412380E-01 +PKER_RDRYG( 23, 29) = 0.341626E-01 +PKER_RDRYG( 23, 30) = 0.327198E-01 +PKER_RDRYG( 23, 31) = 0.353014E-01 +PKER_RDRYG( 23, 32) = 0.401947E-01 +PKER_RDRYG( 23, 33) = 0.459971E-01 +PKER_RDRYG( 23, 34) = 0.517601E-01 +PKER_RDRYG( 23, 35) = 0.569916E-01 +PKER_RDRYG( 23, 36) = 0.615074E-01 +PKER_RDRYG( 23, 37) = 0.652947E-01 +PKER_RDRYG( 23, 38) = 0.684187E-01 +PKER_RDRYG( 23, 39) = 0.709735E-01 +PKER_RDRYG( 23, 40) = 0.730575E-01 +PKER_RDRYG( 24, 1) = 0.156739E+02 +PKER_RDRYG( 24, 2) = 0.129683E+02 +PKER_RDRYG( 24, 3) = 0.107284E+02 +PKER_RDRYG( 24, 4) = 0.887415E+01 +PKER_RDRYG( 24, 5) = 0.733905E+01 +PKER_RDRYG( 24, 6) = 0.606817E+01 +PKER_RDRYG( 24, 7) = 0.501603E+01 +PKER_RDRYG( 24, 8) = 0.414497E+01 +PKER_RDRYG( 24, 9) = 0.342381E+01 +PKER_RDRYG( 24, 10) = 0.282673E+01 +PKER_RDRYG( 24, 11) = 0.233237E+01 +PKER_RDRYG( 24, 12) = 0.192304E+01 +PKER_RDRYG( 24, 13) = 0.158408E+01 +PKER_RDRYG( 24, 14) = 0.130338E+01 +PKER_RDRYG( 24, 15) = 0.107089E+01 +PKER_RDRYG( 24, 16) = 0.878282E+00 +PKER_RDRYG( 24, 17) = 0.718684E+00 +PKER_RDRYG( 24, 18) = 0.586383E+00 +PKER_RDRYG( 24, 19) = 0.476653E+00 +PKER_RDRYG( 24, 20) = 0.385576E+00 +PKER_RDRYG( 24, 21) = 0.309906E+00 +PKER_RDRYG( 24, 22) = 0.246964E+00 +PKER_RDRYG( 24, 23) = 0.194554E+00 +PKER_RDRYG( 24, 24) = 0.150927E+00 +PKER_RDRYG( 24, 25) = 0.114779E+00 +PKER_RDRYG( 24, 26) = 0.852750E-01 +PKER_RDRYG( 24, 27) = 0.620279E-01 +PKER_RDRYG( 24, 28) = 0.449765E-01 +PKER_RDRYG( 24, 29) = 0.340278E-01 +PKER_RDRYG( 24, 30) = 0.287248E-01 +PKER_RDRYG( 24, 31) = 0.280506E-01 +PKER_RDRYG( 24, 32) = 0.306122E-01 +PKER_RDRYG( 24, 33) = 0.349754E-01 +PKER_RDRYG( 24, 34) = 0.399788E-01 +PKER_RDRYG( 24, 35) = 0.448785E-01 +PKER_RDRYG( 24, 36) = 0.492896E-01 +PKER_RDRYG( 24, 37) = 0.530789E-01 +PKER_RDRYG( 24, 38) = 0.562478E-01 +PKER_RDRYG( 24, 39) = 0.588567E-01 +PKER_RDRYG( 24, 40) = 0.609882E-01 +PKER_RDRYG( 25, 1) = 0.156801E+02 +PKER_RDRYG( 25, 2) = 0.129745E+02 +PKER_RDRYG( 25, 3) = 0.107347E+02 +PKER_RDRYG( 25, 4) = 0.888043E+01 +PKER_RDRYG( 25, 5) = 0.734536E+01 +PKER_RDRYG( 25, 6) = 0.607453E+01 +PKER_RDRYG( 25, 7) = 0.502245E+01 +PKER_RDRYG( 25, 8) = 0.415144E+01 +PKER_RDRYG( 25, 9) = 0.343033E+01 +PKER_RDRYG( 25, 10) = 0.283332E+01 +PKER_RDRYG( 25, 11) = 0.233903E+01 +PKER_RDRYG( 25, 12) = 0.192978E+01 +PKER_RDRYG( 25, 13) = 0.159091E+01 +PKER_RDRYG( 25, 14) = 0.131031E+01 +PKER_RDRYG( 25, 15) = 0.107793E+01 +PKER_RDRYG( 25, 16) = 0.885452E+00 +PKER_RDRYG( 25, 17) = 0.726001E+00 +PKER_RDRYG( 25, 18) = 0.593871E+00 +PKER_RDRYG( 25, 19) = 0.484338E+00 +PKER_RDRYG( 25, 20) = 0.393487E+00 +PKER_RDRYG( 25, 21) = 0.318075E+00 +PKER_RDRYG( 25, 22) = 0.255416E+00 +PKER_RDRYG( 25, 23) = 0.203291E+00 +PKER_RDRYG( 25, 24) = 0.159889E+00 +PKER_RDRYG( 25, 25) = 0.123773E+00 +PKER_RDRYG( 25, 26) = 0.938825E-01 +PKER_RDRYG( 25, 27) = 0.695667E-01 +PKER_RDRYG( 25, 28) = 0.505383E-01 +PKER_RDRYG( 25, 29) = 0.367602E-01 +PKER_RDRYG( 25, 30) = 0.281404E-01 +PKER_RDRYG( 25, 31) = 0.242165E-01 +PKER_RDRYG( 25, 32) = 0.240985E-01 +PKER_RDRYG( 25, 33) = 0.265682E-01 +PKER_RDRYG( 25, 34) = 0.304264E-01 +PKER_RDRYG( 25, 35) = 0.347350E-01 +PKER_RDRYG( 25, 36) = 0.388954E-01 +PKER_RDRYG( 25, 37) = 0.426118E-01 +PKER_RDRYG( 25, 38) = 0.457911E-01 +PKER_RDRYG( 25, 39) = 0.484422E-01 +PKER_RDRYG( 25, 40) = 0.506210E-01 +PKER_RDRYG( 26, 1) = 0.156853E+02 +PKER_RDRYG( 26, 2) = 0.129797E+02 +PKER_RDRYG( 26, 3) = 0.107400E+02 +PKER_RDRYG( 26, 4) = 0.888574E+01 +PKER_RDRYG( 26, 5) = 0.735071E+01 +PKER_RDRYG( 26, 6) = 0.607992E+01 +PKER_RDRYG( 26, 7) = 0.502787E+01 +PKER_RDRYG( 26, 8) = 0.415690E+01 +PKER_RDRYG( 26, 9) = 0.343584E+01 +PKER_RDRYG( 26, 10) = 0.283888E+01 +PKER_RDRYG( 26, 11) = 0.234464E+01 +PKER_RDRYG( 26, 12) = 0.193545E+01 +PKER_RDRYG( 26, 13) = 0.159665E+01 +PKER_RDRYG( 26, 14) = 0.131612E+01 +PKER_RDRYG( 26, 15) = 0.108382E+01 +PKER_RDRYG( 26, 16) = 0.891439E+00 +PKER_RDRYG( 26, 17) = 0.732097E+00 +PKER_RDRYG( 26, 18) = 0.600091E+00 +PKER_RDRYG( 26, 19) = 0.490702E+00 +PKER_RDRYG( 26, 20) = 0.400018E+00 +PKER_RDRYG( 26, 21) = 0.324798E+00 +PKER_RDRYG( 26, 22) = 0.262357E+00 +PKER_RDRYG( 26, 23) = 0.210471E+00 +PKER_RDRYG( 26, 24) = 0.167304E+00 +PKER_RDRYG( 26, 25) = 0.131363E+00 +PKER_RDRYG( 26, 26) = 0.101467E+00 +PKER_RDRYG( 26, 27) = 0.767609E-01 +PKER_RDRYG( 26, 28) = 0.567283E-01 +PKER_RDRYG( 26, 29) = 0.411794E-01 +PKER_RDRYG( 26, 30) = 0.300747E-01 +PKER_RDRYG( 26, 31) = 0.233080E-01 +PKER_RDRYG( 26, 32) = 0.204716E-01 +PKER_RDRYG( 26, 33) = 0.207372E-01 +PKER_RDRYG( 26, 34) = 0.230713E-01 +PKER_RDRYG( 26, 35) = 0.264699E-01 +PKER_RDRYG( 26, 36) = 0.301689E-01 +PKER_RDRYG( 26, 37) = 0.336958E-01 +PKER_RDRYG( 26, 38) = 0.368256E-01 +PKER_RDRYG( 26, 39) = 0.394921E-01 +PKER_RDRYG( 26, 40) = 0.417098E-01 +PKER_RDRYG( 27, 1) = 0.156897E+02 +PKER_RDRYG( 27, 2) = 0.129842E+02 +PKER_RDRYG( 27, 3) = 0.107444E+02 +PKER_RDRYG( 27, 4) = 0.889024E+01 +PKER_RDRYG( 27, 5) = 0.735524E+01 +PKER_RDRYG( 27, 6) = 0.608447E+01 +PKER_RDRYG( 27, 7) = 0.503245E+01 +PKER_RDRYG( 27, 8) = 0.416152E+01 +PKER_RDRYG( 27, 9) = 0.344049E+01 +PKER_RDRYG( 27, 10) = 0.284357E+01 +PKER_RDRYG( 27, 11) = 0.234937E+01 +PKER_RDRYG( 27, 12) = 0.194022E+01 +PKER_RDRYG( 27, 13) = 0.160147E+01 +PKER_RDRYG( 27, 14) = 0.132100E+01 +PKER_RDRYG( 27, 15) = 0.108876E+01 +PKER_RDRYG( 27, 16) = 0.896452E+00 +PKER_RDRYG( 27, 17) = 0.737189E+00 +PKER_RDRYG( 27, 18) = 0.605275E+00 +PKER_RDRYG( 27, 19) = 0.495991E+00 +PKER_RDRYG( 27, 20) = 0.405429E+00 +PKER_RDRYG( 27, 21) = 0.330350E+00 +PKER_RDRYG( 27, 22) = 0.268071E+00 +PKER_RDRYG( 27, 23) = 0.216369E+00 +PKER_RDRYG( 27, 24) = 0.173404E+00 +PKER_RDRYG( 27, 25) = 0.137657E+00 +PKER_RDRYG( 27, 26) = 0.107894E+00 +PKER_RDRYG( 27, 27) = 0.831508E-01 +PKER_RDRYG( 27, 28) = 0.627371E-01 +PKER_RDRYG( 27, 29) = 0.462532E-01 +PKER_RDRYG( 27, 30) = 0.335602E-01 +PKER_RDRYG( 27, 31) = 0.246352E-01 +PKER_RDRYG( 27, 32) = 0.193701E-01 +PKER_RDRYG( 27, 33) = 0.173556E-01 +PKER_RDRYG( 27, 34) = 0.178767E-01 +PKER_RDRYG( 27, 35) = 0.200407E-01 +PKER_RDRYG( 27, 36) = 0.230216E-01 +PKER_RDRYG( 27, 37) = 0.261908E-01 +PKER_RDRYG( 27, 38) = 0.291792E-01 +PKER_RDRYG( 27, 39) = 0.318140E-01 +PKER_RDRYG( 27, 40) = 0.340498E-01 +PKER_RDRYG( 28, 1) = 0.156935E+02 +PKER_RDRYG( 28, 2) = 0.129880E+02 +PKER_RDRYG( 28, 3) = 0.107482E+02 +PKER_RDRYG( 28, 4) = 0.889406E+01 +PKER_RDRYG( 28, 5) = 0.735908E+01 +PKER_RDRYG( 28, 6) = 0.608833E+01 +PKER_RDRYG( 28, 7) = 0.503634E+01 +PKER_RDRYG( 28, 8) = 0.416543E+01 +PKER_RDRYG( 28, 9) = 0.344443E+01 +PKER_RDRYG( 28, 10) = 0.284753E+01 +PKER_RDRYG( 28, 11) = 0.235337E+01 +PKER_RDRYG( 28, 12) = 0.194425E+01 +PKER_RDRYG( 28, 13) = 0.160554E+01 +PKER_RDRYG( 28, 14) = 0.132511E+01 +PKER_RDRYG( 28, 15) = 0.109292E+01 +PKER_RDRYG( 28, 16) = 0.900659E+00 +PKER_RDRYG( 28, 17) = 0.741455E+00 +PKER_RDRYG( 28, 18) = 0.609608E+00 +PKER_RDRYG( 28, 19) = 0.500400E+00 +PKER_RDRYG( 28, 20) = 0.409927E+00 +PKER_RDRYG( 28, 21) = 0.334951E+00 +PKER_RDRYG( 28, 22) = 0.272791E+00 +PKER_RDRYG( 28, 23) = 0.221227E+00 +PKER_RDRYG( 28, 24) = 0.178418E+00 +PKER_RDRYG( 28, 25) = 0.142839E+00 +PKER_RDRYG( 28, 26) = 0.113236E+00 +PKER_RDRYG( 28, 27) = 0.885917E-01 +PKER_RDRYG( 28, 28) = 0.681158E-01 +PKER_RDRYG( 28, 29) = 0.512555E-01 +PKER_RDRYG( 28, 30) = 0.377074E-01 +PKER_RDRYG( 28, 31) = 0.273581E-01 +PKER_RDRYG( 28, 32) = 0.202058E-01 +PKER_RDRYG( 28, 33) = 0.161272E-01 +PKER_RDRYG( 28, 34) = 0.147463E-01 +PKER_RDRYG( 28, 35) = 0.154299E-01 +PKER_RDRYG( 28, 36) = 0.174181E-01 +PKER_RDRYG( 28, 37) = 0.200165E-01 +PKER_RDRYG( 28, 38) = 0.227292E-01 +PKER_RDRYG( 28, 39) = 0.252583E-01 +PKER_RDRYG( 28, 40) = 0.274748E-01 +PKER_RDRYG( 29, 1) = 0.156967E+02 +PKER_RDRYG( 29, 2) = 0.129912E+02 +PKER_RDRYG( 29, 3) = 0.107515E+02 +PKER_RDRYG( 29, 4) = 0.889730E+01 +PKER_RDRYG( 29, 5) = 0.736233E+01 +PKER_RDRYG( 29, 6) = 0.609161E+01 +PKER_RDRYG( 29, 7) = 0.503963E+01 +PKER_RDRYG( 29, 8) = 0.416874E+01 +PKER_RDRYG( 29, 9) = 0.344776E+01 +PKER_RDRYG( 29, 10) = 0.285088E+01 +PKER_RDRYG( 29, 11) = 0.235675E+01 +PKER_RDRYG( 29, 12) = 0.194766E+01 +PKER_RDRYG( 29, 13) = 0.160897E+01 +PKER_RDRYG( 29, 14) = 0.132857E+01 +PKER_RDRYG( 29, 15) = 0.109641E+01 +PKER_RDRYG( 29, 16) = 0.904196E+00 +PKER_RDRYG( 29, 17) = 0.745035E+00 +PKER_RDRYG( 29, 18) = 0.613237E+00 +PKER_RDRYG( 29, 19) = 0.504086E+00 +PKER_RDRYG( 29, 20) = 0.413678E+00 +PKER_RDRYG( 29, 21) = 0.338776E+00 +PKER_RDRYG( 29, 22) = 0.276704E+00 +PKER_RDRYG( 29, 23) = 0.225241E+00 +PKER_RDRYG( 29, 24) = 0.182548E+00 +PKER_RDRYG( 29, 25) = 0.147101E+00 +PKER_RDRYG( 29, 26) = 0.117639E+00 +PKER_RDRYG( 29, 27) = 0.931243E-01 +PKER_RDRYG( 29, 28) = 0.727192E-01 +PKER_RDRYG( 29, 29) = 0.557785E-01 +PKER_RDRYG( 29, 30) = 0.418595E-01 +PKER_RDRYG( 29, 31) = 0.307224E-01 +PKER_RDRYG( 29, 32) = 0.223096E-01 +PKER_RDRYG( 29, 33) = 0.165947E-01 +PKER_RDRYG( 29, 34) = 0.134638E-01 +PKER_RDRYG( 29, 35) = 0.125669E-01 +PKER_RDRYG( 29, 36) = 0.133388E-01 +PKER_RDRYG( 29, 37) = 0.151398E-01 +PKER_RDRYG( 29, 38) = 0.174018E-01 +PKER_RDRYG( 29, 39) = 0.197163E-01 +PKER_RDRYG( 29, 40) = 0.218551E-01 +PKER_RDRYG( 30, 1) = 0.156994E+02 +PKER_RDRYG( 30, 2) = 0.129939E+02 +PKER_RDRYG( 30, 3) = 0.107542E+02 +PKER_RDRYG( 30, 4) = 0.890005E+01 +PKER_RDRYG( 30, 5) = 0.736510E+01 +PKER_RDRYG( 30, 6) = 0.609438E+01 +PKER_RDRYG( 30, 7) = 0.504242E+01 +PKER_RDRYG( 30, 8) = 0.417154E+01 +PKER_RDRYG( 30, 9) = 0.345058E+01 +PKER_RDRYG( 30, 10) = 0.285372E+01 +PKER_RDRYG( 30, 11) = 0.235960E+01 +PKER_RDRYG( 30, 12) = 0.195054E+01 +PKER_RDRYG( 30, 13) = 0.161187E+01 +PKER_RDRYG( 30, 14) = 0.133149E+01 +PKER_RDRYG( 30, 15) = 0.109936E+01 +PKER_RDRYG( 30, 16) = 0.907174E+00 +PKER_RDRYG( 30, 17) = 0.748046E+00 +PKER_RDRYG( 30, 18) = 0.616285E+00 +PKER_RDRYG( 30, 19) = 0.507176E+00 +PKER_RDRYG( 30, 20) = 0.416814E+00 +PKER_RDRYG( 30, 21) = 0.341968E+00 +PKER_RDRYG( 30, 22) = 0.279958E+00 +PKER_RDRYG( 30, 23) = 0.228569E+00 +PKER_RDRYG( 30, 24) = 0.185961E+00 +PKER_RDRYG( 30, 25) = 0.150613E+00 +PKER_RDRYG( 30, 26) = 0.121262E+00 +PKER_RDRYG( 30, 27) = 0.968655E-01 +PKER_RDRYG( 30, 28) = 0.765650E-01 +PKER_RDRYG( 30, 29) = 0.596711E-01 +PKER_RDRYG( 30, 30) = 0.456581E-01 +PKER_RDRYG( 30, 31) = 0.341736E-01 +PKER_RDRYG( 30, 32) = 0.250373E-01 +PKER_RDRYG( 30, 33) = 0.182029E-01 +PKER_RDRYG( 30, 34) = 0.136572E-01 +PKER_RDRYG( 30, 35) = 0.112718E-01 +PKER_RDRYG( 30, 36) = 0.107288E-01 +PKER_RDRYG( 30, 37) = 0.115403E-01 +PKER_RDRYG( 30, 38) = 0.131623E-01 +PKER_RDRYG( 30, 39) = 0.151226E-01 +PKER_RDRYG( 30, 40) = 0.170966E-01 +PKER_RDRYG( 31, 1) = 0.157017E+02 +PKER_RDRYG( 31, 2) = 0.129962E+02 +PKER_RDRYG( 31, 3) = 0.107565E+02 +PKER_RDRYG( 31, 4) = 0.890239E+01 +PKER_RDRYG( 31, 5) = 0.736744E+01 +PKER_RDRYG( 31, 6) = 0.609674E+01 +PKER_RDRYG( 31, 7) = 0.504479E+01 +PKER_RDRYG( 31, 8) = 0.417392E+01 +PKER_RDRYG( 31, 9) = 0.345297E+01 +PKER_RDRYG( 31, 10) = 0.285613E+01 +PKER_RDRYG( 31, 11) = 0.236203E+01 +PKER_RDRYG( 31, 12) = 0.195297E+01 +PKER_RDRYG( 31, 13) = 0.161433E+01 +PKER_RDRYG( 31, 14) = 0.133396E+01 +PKER_RDRYG( 31, 15) = 0.110185E+01 +PKER_RDRYG( 31, 16) = 0.909687E+00 +PKER_RDRYG( 31, 17) = 0.750583E+00 +PKER_RDRYG( 31, 18) = 0.618849E+00 +PKER_RDRYG( 31, 19) = 0.509771E+00 +PKER_RDRYG( 31, 20) = 0.419444E+00 +PKER_RDRYG( 31, 21) = 0.344637E+00 +PKER_RDRYG( 31, 22) = 0.282674E+00 +PKER_RDRYG( 31, 23) = 0.231338E+00 +PKER_RDRYG( 31, 24) = 0.188793E+00 +PKER_RDRYG( 31, 25) = 0.153517E+00 +PKER_RDRYG( 31, 26) = 0.124249E+00 +PKER_RDRYG( 31, 27) = 0.999464E-01 +PKER_RDRYG( 31, 28) = 0.797438E-01 +PKER_RDRYG( 31, 29) = 0.629334E-01 +PKER_RDRYG( 31, 30) = 0.489476E-01 +PKER_RDRYG( 31, 31) = 0.373591E-01 +PKER_RDRYG( 31, 32) = 0.278881E-01 +PKER_RDRYG( 31, 33) = 0.203979E-01 +PKER_RDRYG( 31, 34) = 0.148616E-01 +PKER_RDRYG( 31, 35) = 0.112574E-01 +PKER_RDRYG( 31, 36) = 0.946007E-02 +PKER_RDRYG( 31, 37) = 0.918277E-02 +PKER_RDRYG( 31, 38) = 0.999683E-02 +PKER_RDRYG( 31, 39) = 0.114431E-01 +PKER_RDRYG( 31, 40) = 0.131376E-01 +PKER_RDRYG( 32, 1) = 0.157037E+02 +PKER_RDRYG( 32, 2) = 0.129982E+02 +PKER_RDRYG( 32, 3) = 0.107585E+02 +PKER_RDRYG( 32, 4) = 0.890438E+01 +PKER_RDRYG( 32, 5) = 0.736944E+01 +PKER_RDRYG( 32, 6) = 0.609874E+01 +PKER_RDRYG( 32, 7) = 0.504680E+01 +PKER_RDRYG( 32, 8) = 0.417594E+01 +PKER_RDRYG( 32, 9) = 0.345501E+01 +PKER_RDRYG( 32, 10) = 0.285817E+01 +PKER_RDRYG( 32, 11) = 0.236408E+01 +PKER_RDRYG( 32, 12) = 0.195504E+01 +PKER_RDRYG( 32, 13) = 0.161640E+01 +PKER_RDRYG( 32, 14) = 0.133606E+01 +PKER_RDRYG( 32, 15) = 0.110396E+01 +PKER_RDRYG( 32, 16) = 0.911809E+00 +PKER_RDRYG( 32, 17) = 0.752724E+00 +PKER_RDRYG( 32, 18) = 0.621010E+00 +PKER_RDRYG( 32, 19) = 0.511954E+00 +PKER_RDRYG( 32, 20) = 0.421653E+00 +PKER_RDRYG( 32, 21) = 0.346876E+00 +PKER_RDRYG( 32, 22) = 0.284947E+00 +PKER_RDRYG( 32, 23) = 0.233649E+00 +PKER_RDRYG( 32, 24) = 0.191149E+00 +PKER_RDRYG( 32, 25) = 0.155926E+00 +PKER_RDRYG( 32, 26) = 0.126720E+00 +PKER_RDRYG( 32, 27) = 0.102487E+00 +PKER_RDRYG( 32, 28) = 0.823637E-01 +PKER_RDRYG( 32, 29) = 0.656344E-01 +PKER_RDRYG( 32, 30) = 0.517143E-01 +PKER_RDRYG( 32, 31) = 0.401375E-01 +PKER_RDRYG( 32, 32) = 0.305566E-01 +PKER_RDRYG( 32, 33) = 0.227484E-01 +PKER_RDRYG( 32, 34) = 0.166190E-01 +PKER_RDRYG( 32, 35) = 0.121425E-01 +PKER_RDRYG( 32, 36) = 0.929636E-02 +PKER_RDRYG( 32, 37) = 0.796211E-02 +PKER_RDRYG( 32, 38) = 0.787497E-02 +PKER_RDRYG( 32, 39) = 0.866604E-02 +PKER_RDRYG( 32, 40) = 0.994926E-02 +PKER_RDRYG( 33, 1) = 0.157053E+02 +PKER_RDRYG( 33, 2) = 0.129999E+02 +PKER_RDRYG( 33, 3) = 0.107602E+02 +PKER_RDRYG( 33, 4) = 0.890607E+01 +PKER_RDRYG( 33, 5) = 0.737114E+01 +PKER_RDRYG( 33, 6) = 0.610045E+01 +PKER_RDRYG( 33, 7) = 0.504851E+01 +PKER_RDRYG( 33, 8) = 0.417766E+01 +PKER_RDRYG( 33, 9) = 0.345673E+01 +PKER_RDRYG( 33, 10) = 0.285990E+01 +PKER_RDRYG( 33, 11) = 0.236582E+01 +PKER_RDRYG( 33, 12) = 0.195679E+01 +PKER_RDRYG( 33, 13) = 0.161816E+01 +PKER_RDRYG( 33, 14) = 0.133783E+01 +PKER_RDRYG( 33, 15) = 0.110574E+01 +PKER_RDRYG( 33, 16) = 0.913604E+00 +PKER_RDRYG( 33, 17) = 0.754532E+00 +PKER_RDRYG( 33, 18) = 0.622834E+00 +PKER_RDRYG( 33, 19) = 0.513795E+00 +PKER_RDRYG( 33, 20) = 0.423513E+00 +PKER_RDRYG( 33, 21) = 0.348758E+00 +PKER_RDRYG( 33, 22) = 0.286853E+00 +PKER_RDRYG( 33, 23) = 0.235584E+00 +PKER_RDRYG( 33, 24) = 0.193116E+00 +PKER_RDRYG( 33, 25) = 0.157931E+00 +PKER_RDRYG( 33, 26) = 0.128770E+00 +PKER_RDRYG( 33, 27) = 0.104589E+00 +PKER_RDRYG( 33, 28) = 0.845253E-01 +PKER_RDRYG( 33, 29) = 0.678623E-01 +PKER_RDRYG( 33, 30) = 0.540092E-01 +PKER_RDRYG( 33, 31) = 0.424830E-01 +PKER_RDRYG( 33, 32) = 0.329012E-01 +PKER_RDRYG( 33, 33) = 0.249827E-01 +PKER_RDRYG( 33, 34) = 0.185543E-01 +PKER_RDRYG( 33, 35) = 0.135404E-01 +PKER_RDRYG( 33, 36) = 0.993014E-02 +PKER_RDRYG( 33, 37) = 0.769477E-02 +PKER_RDRYG( 33, 38) = 0.672045E-02 +PKER_RDRYG( 33, 39) = 0.676668E-02 +PKER_RDRYG( 33, 40) = 0.751623E-02 +PKER_RDRYG( 34, 1) = 0.157068E+02 +PKER_RDRYG( 34, 2) = 0.130013E+02 +PKER_RDRYG( 34, 3) = 0.107616E+02 +PKER_RDRYG( 34, 4) = 0.890751E+01 +PKER_RDRYG( 34, 5) = 0.737258E+01 +PKER_RDRYG( 34, 6) = 0.610189E+01 +PKER_RDRYG( 34, 7) = 0.504996E+01 +PKER_RDRYG( 34, 8) = 0.417912E+01 +PKER_RDRYG( 34, 9) = 0.345819E+01 +PKER_RDRYG( 34, 10) = 0.286137E+01 +PKER_RDRYG( 34, 11) = 0.236730E+01 +PKER_RDRYG( 34, 12) = 0.195827E+01 +PKER_RDRYG( 34, 13) = 0.161965E+01 +PKER_RDRYG( 34, 14) = 0.133933E+01 +PKER_RDRYG( 34, 15) = 0.110725E+01 +PKER_RDRYG( 34, 16) = 0.915123E+00 +PKER_RDRYG( 34, 17) = 0.756062E+00 +PKER_RDRYG( 34, 18) = 0.624375E+00 +PKER_RDRYG( 34, 19) = 0.515349E+00 +PKER_RDRYG( 34, 20) = 0.425082E+00 +PKER_RDRYG( 34, 21) = 0.350342E+00 +PKER_RDRYG( 34, 22) = 0.288455E+00 +PKER_RDRYG( 34, 23) = 0.237207E+00 +PKER_RDRYG( 34, 24) = 0.194764E+00 +PKER_RDRYG( 34, 25) = 0.159606E+00 +PKER_RDRYG( 34, 26) = 0.130477E+00 +PKER_RDRYG( 34, 27) = 0.106334E+00 +PKER_RDRYG( 34, 28) = 0.863139E-01 +PKER_RDRYG( 34, 29) = 0.697015E-01 +PKER_RDRYG( 34, 30) = 0.559040E-01 +PKER_RDRYG( 34, 31) = 0.444327E-01 +PKER_RDRYG( 34, 32) = 0.348892E-01 +PKER_RDRYG( 34, 33) = 0.269596E-01 +PKER_RDRYG( 34, 34) = 0.204175E-01 +PKER_RDRYG( 34, 35) = 0.151283E-01 +PKER_RDRYG( 34, 36) = 0.110336E-01 +PKER_RDRYG( 34, 37) = 0.812881E-02 +PKER_RDRYG( 34, 38) = 0.638384E-02 +PKER_RDRYG( 34, 39) = 0.568390E-02 +PKER_RDRYG( 34, 40) = 0.582227E-02 +PKER_RDRYG( 35, 1) = 0.157080E+02 +PKER_RDRYG( 35, 2) = 0.130025E+02 +PKER_RDRYG( 35, 3) = 0.107628E+02 +PKER_RDRYG( 35, 4) = 0.890873E+01 +PKER_RDRYG( 35, 5) = 0.737381E+01 +PKER_RDRYG( 35, 6) = 0.610313E+01 +PKER_RDRYG( 35, 7) = 0.505120E+01 +PKER_RDRYG( 35, 8) = 0.418036E+01 +PKER_RDRYG( 35, 9) = 0.345944E+01 +PKER_RDRYG( 35, 10) = 0.286262E+01 +PKER_RDRYG( 35, 11) = 0.236855E+01 +PKER_RDRYG( 35, 12) = 0.195953E+01 +PKER_RDRYG( 35, 13) = 0.162092E+01 +PKER_RDRYG( 35, 14) = 0.134060E+01 +PKER_RDRYG( 35, 15) = 0.110853E+01 +PKER_RDRYG( 35, 16) = 0.916411E+00 +PKER_RDRYG( 35, 17) = 0.757357E+00 +PKER_RDRYG( 35, 18) = 0.625679E+00 +PKER_RDRYG( 35, 19) = 0.516663E+00 +PKER_RDRYG( 35, 20) = 0.426406E+00 +PKER_RDRYG( 35, 21) = 0.351679E+00 +PKER_RDRYG( 35, 22) = 0.289805E+00 +PKER_RDRYG( 35, 23) = 0.238572E+00 +PKER_RDRYG( 35, 24) = 0.196146E+00 +PKER_RDRYG( 35, 25) = 0.161009E+00 +PKER_RDRYG( 35, 26) = 0.131903E+00 +PKER_RDRYG( 35, 27) = 0.107787E+00 +PKER_RDRYG( 35, 28) = 0.877991E-01 +PKER_RDRYG( 35, 29) = 0.712238E-01 +PKER_RDRYG( 35, 30) = 0.574690E-01 +PKER_RDRYG( 35, 31) = 0.460443E-01 +PKER_RDRYG( 35, 32) = 0.365454E-01 +PKER_RDRYG( 35, 33) = 0.286436E-01 +PKER_RDRYG( 35, 34) = 0.220827E-01 +PKER_RDRYG( 35, 35) = 0.166801E-01 +PKER_RDRYG( 35, 36) = 0.123284E-01 +PKER_RDRYG( 35, 37) = 0.899312E-02 +PKER_RDRYG( 35, 38) = 0.666232E-02 +PKER_RDRYG( 35, 39) = 0.530804E-02 +PKER_RDRYG( 35, 40) = 0.482355E-02 +PKER_RDRYG( 36, 1) = 0.157090E+02 +PKER_RDRYG( 36, 2) = 0.130036E+02 +PKER_RDRYG( 36, 3) = 0.107639E+02 +PKER_RDRYG( 36, 4) = 0.890977E+01 +PKER_RDRYG( 36, 5) = 0.737485E+01 +PKER_RDRYG( 36, 6) = 0.610418E+01 +PKER_RDRYG( 36, 7) = 0.505225E+01 +PKER_RDRYG( 36, 8) = 0.418142E+01 +PKER_RDRYG( 36, 9) = 0.346050E+01 +PKER_RDRYG( 36, 10) = 0.286369E+01 +PKER_RDRYG( 36, 11) = 0.236962E+01 +PKER_RDRYG( 36, 12) = 0.196060E+01 +PKER_RDRYG( 36, 13) = 0.162200E+01 +PKER_RDRYG( 36, 14) = 0.134168E+01 +PKER_RDRYG( 36, 15) = 0.110962E+01 +PKER_RDRYG( 36, 16) = 0.917502E+00 +PKER_RDRYG( 36, 17) = 0.758455E+00 +PKER_RDRYG( 36, 18) = 0.626784E+00 +PKER_RDRYG( 36, 19) = 0.517775E+00 +PKER_RDRYG( 36, 20) = 0.427526E+00 +PKER_RDRYG( 36, 21) = 0.352807E+00 +PKER_RDRYG( 36, 22) = 0.290944E+00 +PKER_RDRYG( 36, 23) = 0.239723E+00 +PKER_RDRYG( 36, 24) = 0.197309E+00 +PKER_RDRYG( 36, 25) = 0.162187E+00 +PKER_RDRYG( 36, 26) = 0.133098E+00 +PKER_RDRYG( 36, 27) = 0.109002E+00 +PKER_RDRYG( 36, 28) = 0.890365E-01 +PKER_RDRYG( 36, 29) = 0.724882E-01 +PKER_RDRYG( 36, 30) = 0.587648E-01 +PKER_RDRYG( 36, 31) = 0.473761E-01 +PKER_RDRYG( 36, 32) = 0.379160E-01 +PKER_RDRYG( 36, 33) = 0.300505E-01 +PKER_RDRYG( 36, 34) = 0.235088E-01 +PKER_RDRYG( 36, 35) = 0.180811E-01 +PKER_RDRYG( 36, 36) = 0.136215E-01 +PKER_RDRYG( 36, 37) = 0.100480E-01 +PKER_RDRYG( 36, 38) = 0.733183E-02 +PKER_RDRYG( 36, 39) = 0.546978E-02 +PKER_RDRYG( 36, 40) = 0.442459E-02 +PKER_RDRYG( 37, 1) = 0.157099E+02 +PKER_RDRYG( 37, 2) = 0.130045E+02 +PKER_RDRYG( 37, 3) = 0.107648E+02 +PKER_RDRYG( 37, 4) = 0.891066E+01 +PKER_RDRYG( 37, 5) = 0.737574E+01 +PKER_RDRYG( 37, 6) = 0.610507E+01 +PKER_RDRYG( 37, 7) = 0.505315E+01 +PKER_RDRYG( 37, 8) = 0.418231E+01 +PKER_RDRYG( 37, 9) = 0.346140E+01 +PKER_RDRYG( 37, 10) = 0.286459E+01 +PKER_RDRYG( 37, 11) = 0.237053E+01 +PKER_RDRYG( 37, 12) = 0.196151E+01 +PKER_RDRYG( 37, 13) = 0.162291E+01 +PKER_RDRYG( 37, 14) = 0.134260E+01 +PKER_RDRYG( 37, 15) = 0.111054E+01 +PKER_RDRYG( 37, 16) = 0.918429E+00 +PKER_RDRYG( 37, 17) = 0.759387E+00 +PKER_RDRYG( 37, 18) = 0.627720E+00 +PKER_RDRYG( 37, 19) = 0.518717E+00 +PKER_RDRYG( 37, 20) = 0.428474E+00 +PKER_RDRYG( 37, 21) = 0.353762E+00 +PKER_RDRYG( 37, 22) = 0.291907E+00 +PKER_RDRYG( 37, 23) = 0.240693E+00 +PKER_RDRYG( 37, 24) = 0.198289E+00 +PKER_RDRYG( 37, 25) = 0.163177E+00 +PKER_RDRYG( 37, 26) = 0.134101E+00 +PKER_RDRYG( 37, 27) = 0.110019E+00 +PKER_RDRYG( 37, 28) = 0.900708E-01 +PKER_RDRYG( 37, 29) = 0.735419E-01 +PKER_RDRYG( 37, 30) = 0.598414E-01 +PKER_RDRYG( 37, 31) = 0.484792E-01 +PKER_RDRYG( 37, 32) = 0.390495E-01 +PKER_RDRYG( 37, 33) = 0.312163E-01 +PKER_RDRYG( 37, 34) = 0.247033E-01 +PKER_RDRYG( 37, 35) = 0.192878E-01 +PKER_RDRYG( 37, 36) = 0.147988E-01 +PKER_RDRYG( 37, 37) = 0.111191E-01 +PKER_RDRYG( 37, 38) = 0.818617E-02 +PKER_RDRYG( 37, 39) = 0.598058E-02 +PKER_RDRYG( 37, 40) = 0.449521E-02 +PKER_RDRYG( 38, 1) = 0.157107E+02 +PKER_RDRYG( 38, 2) = 0.130052E+02 +PKER_RDRYG( 38, 3) = 0.107655E+02 +PKER_RDRYG( 38, 4) = 0.891142E+01 +PKER_RDRYG( 38, 5) = 0.737650E+01 +PKER_RDRYG( 38, 6) = 0.610583E+01 +PKER_RDRYG( 38, 7) = 0.505391E+01 +PKER_RDRYG( 38, 8) = 0.418308E+01 +PKER_RDRYG( 38, 9) = 0.346217E+01 +PKER_RDRYG( 38, 10) = 0.286536E+01 +PKER_RDRYG( 38, 11) = 0.237130E+01 +PKER_RDRYG( 38, 12) = 0.196229E+01 +PKER_RDRYG( 38, 13) = 0.162369E+01 +PKER_RDRYG( 38, 14) = 0.134338E+01 +PKER_RDRYG( 38, 15) = 0.111132E+01 +PKER_RDRYG( 38, 16) = 0.919216E+00 +PKER_RDRYG( 38, 17) = 0.760177E+00 +PKER_RDRYG( 38, 18) = 0.628515E+00 +PKER_RDRYG( 38, 19) = 0.519516E+00 +PKER_RDRYG( 38, 20) = 0.429278E+00 +PKER_RDRYG( 38, 21) = 0.354571E+00 +PKER_RDRYG( 38, 22) = 0.292721E+00 +PKER_RDRYG( 38, 23) = 0.241514E+00 +PKER_RDRYG( 38, 24) = 0.199117E+00 +PKER_RDRYG( 38, 25) = 0.164013E+00 +PKER_RDRYG( 38, 26) = 0.134945E+00 +PKER_RDRYG( 38, 27) = 0.110874E+00 +PKER_RDRYG( 38, 28) = 0.909377E-01 +PKER_RDRYG( 38, 29) = 0.744229E-01 +PKER_RDRYG( 38, 30) = 0.607388E-01 +PKER_RDRYG( 38, 31) = 0.493960E-01 +PKER_RDRYG( 38, 32) = 0.399888E-01 +PKER_RDRYG( 38, 33) = 0.321810E-01 +PKER_RDRYG( 38, 34) = 0.256949E-01 +PKER_RDRYG( 38, 35) = 0.203021E-01 +PKER_RDRYG( 38, 36) = 0.158193E-01 +PKER_RDRYG( 38, 37) = 0.121074E-01 +PKER_RDRYG( 38, 38) = 0.907255E-02 +PKER_RDRYG( 38, 39) = 0.666890E-02 +PKER_RDRYG( 38, 40) = 0.488099E-02 +PKER_RDRYG( 39, 1) = 0.157113E+02 +PKER_RDRYG( 39, 2) = 0.130059E+02 +PKER_RDRYG( 39, 3) = 0.107662E+02 +PKER_RDRYG( 39, 4) = 0.891206E+01 +PKER_RDRYG( 39, 5) = 0.737715E+01 +PKER_RDRYG( 39, 6) = 0.610648E+01 +PKER_RDRYG( 39, 7) = 0.505456E+01 +PKER_RDRYG( 39, 8) = 0.418373E+01 +PKER_RDRYG( 39, 9) = 0.346282E+01 +PKER_RDRYG( 39, 10) = 0.286602E+01 +PKER_RDRYG( 39, 11) = 0.237195E+01 +PKER_RDRYG( 39, 12) = 0.196295E+01 +PKER_RDRYG( 39, 13) = 0.162435E+01 +PKER_RDRYG( 39, 14) = 0.134404E+01 +PKER_RDRYG( 39, 15) = 0.111199E+01 +PKER_RDRYG( 39, 16) = 0.919884E+00 +PKER_RDRYG( 39, 17) = 0.760849E+00 +PKER_RDRYG( 39, 18) = 0.629189E+00 +PKER_RDRYG( 39, 19) = 0.520193E+00 +PKER_RDRYG( 39, 20) = 0.429959E+00 +PKER_RDRYG( 39, 21) = 0.355256E+00 +PKER_RDRYG( 39, 22) = 0.293410E+00 +PKER_RDRYG( 39, 23) = 0.242208E+00 +PKER_RDRYG( 39, 24) = 0.199816E+00 +PKER_RDRYG( 39, 25) = 0.164718E+00 +PKER_RDRYG( 39, 26) = 0.135657E+00 +PKER_RDRYG( 39, 27) = 0.111594E+00 +PKER_RDRYG( 39, 28) = 0.916661E-01 +PKER_RDRYG( 39, 29) = 0.751615E-01 +PKER_RDRYG( 39, 30) = 0.614894E-01 +PKER_RDRYG( 39, 31) = 0.501605E-01 +PKER_RDRYG( 39, 32) = 0.407696E-01 +PKER_RDRYG( 39, 33) = 0.329808E-01 +PKER_RDRYG( 39, 34) = 0.265161E-01 +PKER_RDRYG( 39, 35) = 0.211454E-01 +PKER_RDRYG( 39, 36) = 0.166802E-01 +PKER_RDRYG( 39, 37) = 0.129700E-01 +PKER_RDRYG( 39, 38) = 0.990158E-02 +PKER_RDRYG( 39, 39) = 0.740159E-02 +PKER_RDRYG( 39, 40) = 0.543265E-02 +PKER_RDRYG( 40, 1) = 0.157118E+02 +PKER_RDRYG( 40, 2) = 0.130064E+02 +PKER_RDRYG( 40, 3) = 0.107667E+02 +PKER_RDRYG( 40, 4) = 0.891261E+01 +PKER_RDRYG( 40, 5) = 0.737770E+01 +PKER_RDRYG( 40, 6) = 0.610703E+01 +PKER_RDRYG( 40, 7) = 0.505511E+01 +PKER_RDRYG( 40, 8) = 0.418429E+01 +PKER_RDRYG( 40, 9) = 0.346338E+01 +PKER_RDRYG( 40, 10) = 0.286657E+01 +PKER_RDRYG( 40, 11) = 0.237251E+01 +PKER_RDRYG( 40, 12) = 0.196351E+01 +PKER_RDRYG( 40, 13) = 0.162491E+01 +PKER_RDRYG( 40, 14) = 0.134461E+01 +PKER_RDRYG( 40, 15) = 0.111256E+01 +PKER_RDRYG( 40, 16) = 0.920453E+00 +PKER_RDRYG( 40, 17) = 0.761419E+00 +PKER_RDRYG( 40, 18) = 0.629762E+00 +PKER_RDRYG( 40, 19) = 0.520769E+00 +PKER_RDRYG( 40, 20) = 0.430537E+00 +PKER_RDRYG( 40, 21) = 0.355837E+00 +PKER_RDRYG( 40, 22) = 0.293995E+00 +PKER_RDRYG( 40, 23) = 0.242796E+00 +PKER_RDRYG( 40, 24) = 0.200408E+00 +PKER_RDRYG( 40, 25) = 0.165315E+00 +PKER_RDRYG( 40, 26) = 0.136259E+00 +PKER_RDRYG( 40, 27) = 0.112201E+00 +PKER_RDRYG( 40, 28) = 0.922796E-01 +PKER_RDRYG( 40, 29) = 0.757823E-01 +PKER_RDRYG( 40, 30) = 0.621188E-01 +PKER_RDRYG( 40, 31) = 0.507999E-01 +PKER_RDRYG( 40, 32) = 0.414208E-01 +PKER_RDRYG( 40, 33) = 0.336459E-01 +PKER_RDRYG( 40, 34) = 0.271972E-01 +PKER_RDRYG( 40, 35) = 0.218444E-01 +PKER_RDRYG( 40, 36) = 0.173974E-01 +PKER_RDRYG( 40, 37) = 0.137005E-01 +PKER_RDRYG( 40, 38) = 0.106300E-01 +PKER_RDRYG( 40, 39) = 0.809434E-02 +PKER_RDRYG( 40, 40) = 0.603544E-02 +END IF +! +END SUBROUTINE LIMA_READ_XKER_RDRYG diff --git a/src/MNH/lima_read_xker_sdryg.f90 b/src/MNH/lima_read_xker_sdryg.f90 new file mode 100644 index 0000000000000000000000000000000000000000..b47dc11a0fadb04e7b6abbfa43fffdc01f55893c --- /dev/null +++ b/src/MNH/lima_read_xker_sdryg.f90 @@ -0,0 +1,3337 @@ +!MNH_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +!----------------------------------------------------------------- +!--------------- special set of characters for RCS information +!----------------------------------------------------------------- +! $Source$ $Revision$ +! MASDEV4_7 init 2006/05/18 13:07:25 +!----------------------------------------------------------------- +! ########################### + MODULE MODI_LIMA_READ_XKER_SDRYG +! ########################### +! +INTERFACE + SUBROUTINE LIMA_READ_XKER_SDRYG (KDRYLBDAG,KDRYLBDAS,KND, & + PALPHAG,PNUG,PALPHAS,PNUS,PEGS,PBS,PCG,PDG,PCS,PDS, & + PDRYLBDAG_MAX,PDRYLBDAS_MAX,PDRYLBDAG_MIN,PDRYLBDAS_MIN, & + PFDINFTY,PKER_SDRYG ) +! +INTEGER, INTENT(OUT) :: KND,KDRYLBDAG,KDRYLBDAS +REAL, INTENT(OUT) :: PALPHAG +REAL, INTENT(OUT) :: PNUG +REAL, INTENT(OUT) :: PALPHAS +REAL, INTENT(OUT) :: PNUS +REAL, INTENT(OUT) :: PEGS +REAL, INTENT(OUT) :: PBS +REAL, INTENT(OUT) :: PCG +REAL, INTENT(OUT) :: PDG +REAL, INTENT(OUT) :: PCS +REAL, INTENT(OUT) :: PDS +REAL, INTENT(OUT) :: PDRYLBDAG_MAX +REAL, INTENT(OUT) :: PDRYLBDAS_MAX +REAL, INTENT(OUT) :: PDRYLBDAG_MIN +REAL, INTENT(OUT) :: PDRYLBDAS_MIN +REAL, INTENT(OUT) :: PFDINFTY +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_SDRYG +! +END SUBROUTINE LIMA_READ_XKER_SDRYG +! +END INTERFACE +! +END MODULE MODI_LIMA_READ_XKER_SDRYG +! ######################################################################## + SUBROUTINE LIMA_READ_XKER_SDRYG (KDRYLBDAG,KDRYLBDAS,KND, & + PALPHAG,PNUG,PALPHAS,PNUS,PEGS,PBS,PCG,PDG,PCS,PDS, & + PDRYLBDAG_MAX,PDRYLBDAS_MAX,PDRYLBDAG_MIN,PDRYLBDAS_MIN, & + PFDINFTY,PKER_SDRYG ) +! ######################################################################## +! +!!**** * * - initialize the kernels for the snow-graupel dry growth process +!! +!! PURPOSE +!! ------- +!! The purpose of this routine is to initialize the kernels PKER_SDRYG +!! prepared from a previous run of the routine INI_RAIN_ICE. The reading +!! of the kernels is optional after checking for the dimensions of the +!! arrays. +!! +!!** METHOD +!! ------ +!! +!! +!! EXTERNAL +!! -------- +!! None +!! +!! +!! IMPLICIT ARGUMENTS +!! ------------------ +!! None +!! +!! REFERENCE +!! --------- +!! Book2 of documentation ( routine READ_XKER_SDRYG ) +!! +!! AUTHOR +!! ------ +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original 09/04/96 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +!* 0.2 Declarations of local variables : +! +! +INTEGER, INTENT(OUT) :: KND,KDRYLBDAG,KDRYLBDAS +REAL, INTENT(OUT) :: PALPHAG +REAL, INTENT(OUT) :: PNUG +REAL, INTENT(OUT) :: PALPHAS +REAL, INTENT(OUT) :: PNUS +REAL, INTENT(OUT) :: PEGS +REAL, INTENT(OUT) :: PBS +REAL, INTENT(OUT) :: PCG +REAL, INTENT(OUT) :: PDG +REAL, INTENT(OUT) :: PCS +REAL, INTENT(OUT) :: PDS +REAL, INTENT(OUT) :: PDRYLBDAG_MAX +REAL, INTENT(OUT) :: PDRYLBDAS_MAX +REAL, INTENT(OUT) :: PDRYLBDAG_MIN +REAL, INTENT(OUT) :: PDRYLBDAS_MIN +REAL, INTENT(OUT) :: PFDINFTY +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_SDRYG +! +! ################################################################### +! #INSERT HERE THE OUTPUT OF INI_RAIN_ICE IF THE KERNELS ARE UPDATED# +! ################################################################### +! +KND= 50 +KDRYLBDAG= 40 +KDRYLBDAS= 80 +PALPHAG= 0.100000E+01 +PNUG= 0.100000E+01 +PALPHAS= 0.100000E+01 +PNUS= 0.100000E+01 +PEGS= 0.100000E+01 +PBS= 0.190000E+01 +PCG= 0.122000E+03 +PDG= 0.660000E+00 +PCS= 0.500000E+01 +PDS= 0.270000E+00 +PDRYLBDAG_MAX= 0.100000E+08 +PDRYLBDAS_MAX= 0.250000E+10 +PDRYLBDAG_MIN= 0.100000E+04 +PDRYLBDAS_MIN= 0.250000E+02 +PFDINFTY= 0.200000E+02 +! +IF( PRESENT(PKER_SDRYG) ) THEN +PKER_SDRYG( 1, 1) = 0.181263E+01 +PKER_SDRYG( 1, 2) = 0.163147E+01 +PKER_SDRYG( 1, 3) = 0.146558E+01 +PKER_SDRYG( 1, 4) = 0.131501E+01 +PKER_SDRYG( 1, 5) = 0.117971E+01 +PKER_SDRYG( 1, 6) = 0.105940E+01 +PKER_SDRYG( 1, 7) = 0.954664E+00 +PKER_SDRYG( 1, 8) = 0.865241E+00 +PKER_SDRYG( 1, 9) = 0.791190E+00 +PKER_SDRYG( 1, 10) = 0.733135E+00 +PKER_SDRYG( 1, 11) = 0.691332E+00 +PKER_SDRYG( 1, 12) = 0.666135E+00 +PKER_SDRYG( 1, 13) = 0.658669E+00 +PKER_SDRYG( 1, 14) = 0.669468E+00 +PKER_SDRYG( 1, 15) = 0.699407E+00 +PKER_SDRYG( 1, 16) = 0.749020E+00 +PKER_SDRYG( 1, 17) = 0.817882E+00 +PKER_SDRYG( 1, 18) = 0.905102E+00 +PKER_SDRYG( 1, 19) = 0.100805E+01 +PKER_SDRYG( 1, 20) = 0.112208E+01 +PKER_SDRYG( 1, 21) = 0.124139E+01 +PKER_SDRYG( 1, 22) = 0.136056E+01 +PKER_SDRYG( 1, 23) = 0.147535E+01 +PKER_SDRYG( 1, 24) = 0.158271E+01 +PKER_SDRYG( 1, 25) = 0.168072E+01 +PKER_SDRYG( 1, 26) = 0.176838E+01 +PKER_SDRYG( 1, 27) = 0.184560E+01 +PKER_SDRYG( 1, 28) = 0.191298E+01 +PKER_SDRYG( 1, 29) = 0.197156E+01 +PKER_SDRYG( 1, 30) = 0.202257E+01 +PKER_SDRYG( 1, 31) = 0.206716E+01 +PKER_SDRYG( 1, 32) = 0.210638E+01 +PKER_SDRYG( 1, 33) = 0.214108E+01 +PKER_SDRYG( 1, 34) = 0.217197E+01 +PKER_SDRYG( 1, 35) = 0.219964E+01 +PKER_SDRYG( 1, 36) = 0.222456E+01 +PKER_SDRYG( 1, 37) = 0.224714E+01 +PKER_SDRYG( 1, 38) = 0.226768E+01 +PKER_SDRYG( 1, 39) = 0.228645E+01 +PKER_SDRYG( 1, 40) = 0.230366E+01 +PKER_SDRYG( 1, 41) = 0.231950E+01 +PKER_SDRYG( 1, 42) = 0.233413E+01 +PKER_SDRYG( 1, 43) = 0.234766E+01 +PKER_SDRYG( 1, 44) = 0.236020E+01 +PKER_SDRYG( 1, 45) = 0.237186E+01 +PKER_SDRYG( 1, 46) = 0.238271E+01 +PKER_SDRYG( 1, 47) = 0.239281E+01 +PKER_SDRYG( 1, 48) = 0.240224E+01 +PKER_SDRYG( 1, 49) = 0.241105E+01 +PKER_SDRYG( 1, 50) = 0.241928E+01 +PKER_SDRYG( 1, 51) = 0.242698E+01 +PKER_SDRYG( 1, 52) = 0.243418E+01 +PKER_SDRYG( 1, 53) = 0.244092E+01 +PKER_SDRYG( 1, 54) = 0.244724E+01 +PKER_SDRYG( 1, 55) = 0.245316E+01 +PKER_SDRYG( 1, 56) = 0.245871E+01 +PKER_SDRYG( 1, 57) = 0.246392E+01 +PKER_SDRYG( 1, 58) = 0.246880E+01 +PKER_SDRYG( 1, 59) = 0.247338E+01 +PKER_SDRYG( 1, 60) = 0.247767E+01 +PKER_SDRYG( 1, 61) = 0.248171E+01 +PKER_SDRYG( 1, 62) = 0.248549E+01 +PKER_SDRYG( 1, 63) = 0.248904E+01 +PKER_SDRYG( 1, 64) = 0.249237E+01 +PKER_SDRYG( 1, 65) = 0.249550E+01 +PKER_SDRYG( 1, 66) = 0.249843E+01 +PKER_SDRYG( 1, 67) = 0.250119E+01 +PKER_SDRYG( 1, 68) = 0.250377E+01 +PKER_SDRYG( 1, 69) = 0.250620E+01 +PKER_SDRYG( 1, 70) = 0.250848E+01 +PKER_SDRYG( 1, 71) = 0.251062E+01 +PKER_SDRYG( 1, 72) = 0.251263E+01 +PKER_SDRYG( 1, 73) = 0.251452E+01 +PKER_SDRYG( 1, 74) = 0.251629E+01 +PKER_SDRYG( 1, 75) = 0.251796E+01 +PKER_SDRYG( 1, 76) = 0.251952E+01 +PKER_SDRYG( 1, 77) = 0.252099E+01 +PKER_SDRYG( 1, 78) = 0.252236E+01 +PKER_SDRYG( 1, 79) = 0.252366E+01 +PKER_SDRYG( 1, 80) = 0.252487E+01 +PKER_SDRYG( 2, 1) = 0.199024E+01 +PKER_SDRYG( 2, 2) = 0.180156E+01 +PKER_SDRYG( 2, 3) = 0.162637E+01 +PKER_SDRYG( 2, 4) = 0.146459E+01 +PKER_SDRYG( 2, 5) = 0.131591E+01 +PKER_SDRYG( 2, 6) = 0.118046E+01 +PKER_SDRYG( 2, 7) = 0.105818E+01 +PKER_SDRYG( 2, 8) = 0.949189E+00 +PKER_SDRYG( 2, 9) = 0.853560E+00 +PKER_SDRYG( 2, 10) = 0.771539E+00 +PKER_SDRYG( 2, 11) = 0.703653E+00 +PKER_SDRYG( 2, 12) = 0.650109E+00 +PKER_SDRYG( 2, 13) = 0.611685E+00 +PKER_SDRYG( 2, 14) = 0.589133E+00 +PKER_SDRYG( 2, 15) = 0.583308E+00 +PKER_SDRYG( 2, 16) = 0.595133E+00 +PKER_SDRYG( 2, 17) = 0.625162E+00 +PKER_SDRYG( 2, 18) = 0.673359E+00 +PKER_SDRYG( 2, 19) = 0.738907E+00 +PKER_SDRYG( 2, 20) = 0.819564E+00 +PKER_SDRYG( 2, 21) = 0.912202E+00 +PKER_SDRYG( 2, 22) = 0.101189E+01 +PKER_SDRYG( 2, 23) = 0.111334E+01 +PKER_SDRYG( 2, 24) = 0.121202E+01 +PKER_SDRYG( 2, 25) = 0.130478E+01 +PKER_SDRYG( 2, 26) = 0.138982E+01 +PKER_SDRYG( 2, 27) = 0.146651E+01 +PKER_SDRYG( 2, 28) = 0.153473E+01 +PKER_SDRYG( 2, 29) = 0.159487E+01 +PKER_SDRYG( 2, 30) = 0.164760E+01 +PKER_SDRYG( 2, 31) = 0.169376E+01 +PKER_SDRYG( 2, 32) = 0.173428E+01 +PKER_SDRYG( 2, 33) = 0.177003E+01 +PKER_SDRYG( 2, 34) = 0.180176E+01 +PKER_SDRYG( 2, 35) = 0.183010E+01 +PKER_SDRYG( 2, 36) = 0.185555E+01 +PKER_SDRYG( 2, 37) = 0.187853E+01 +PKER_SDRYG( 2, 38) = 0.189939E+01 +PKER_SDRYG( 2, 39) = 0.191841E+01 +PKER_SDRYG( 2, 40) = 0.193583E+01 +PKER_SDRYG( 2, 41) = 0.195183E+01 +PKER_SDRYG( 2, 42) = 0.196657E+01 +PKER_SDRYG( 2, 43) = 0.198020E+01 +PKER_SDRYG( 2, 44) = 0.199282E+01 +PKER_SDRYG( 2, 45) = 0.200454E+01 +PKER_SDRYG( 2, 46) = 0.201543E+01 +PKER_SDRYG( 2, 47) = 0.202557E+01 +PKER_SDRYG( 2, 48) = 0.203503E+01 +PKER_SDRYG( 2, 49) = 0.204386E+01 +PKER_SDRYG( 2, 50) = 0.205211E+01 +PKER_SDRYG( 2, 51) = 0.205982E+01 +PKER_SDRYG( 2, 52) = 0.206703E+01 +PKER_SDRYG( 2, 53) = 0.207379E+01 +PKER_SDRYG( 2, 54) = 0.208011E+01 +PKER_SDRYG( 2, 55) = 0.208604E+01 +PKER_SDRYG( 2, 56) = 0.209159E+01 +PKER_SDRYG( 2, 57) = 0.209680E+01 +PKER_SDRYG( 2, 58) = 0.210169E+01 +PKER_SDRYG( 2, 59) = 0.210627E+01 +PKER_SDRYG( 2, 60) = 0.211056E+01 +PKER_SDRYG( 2, 61) = 0.211460E+01 +PKER_SDRYG( 2, 62) = 0.211838E+01 +PKER_SDRYG( 2, 63) = 0.212193E+01 +PKER_SDRYG( 2, 64) = 0.212526E+01 +PKER_SDRYG( 2, 65) = 0.212839E+01 +PKER_SDRYG( 2, 66) = 0.213133E+01 +PKER_SDRYG( 2, 67) = 0.213408E+01 +PKER_SDRYG( 2, 68) = 0.213667E+01 +PKER_SDRYG( 2, 69) = 0.213910E+01 +PKER_SDRYG( 2, 70) = 0.214138E+01 +PKER_SDRYG( 2, 71) = 0.214352E+01 +PKER_SDRYG( 2, 72) = 0.214553E+01 +PKER_SDRYG( 2, 73) = 0.214742E+01 +PKER_SDRYG( 2, 74) = 0.214919E+01 +PKER_SDRYG( 2, 75) = 0.215085E+01 +PKER_SDRYG( 2, 76) = 0.215242E+01 +PKER_SDRYG( 2, 77) = 0.215388E+01 +PKER_SDRYG( 2, 78) = 0.215526E+01 +PKER_SDRYG( 2, 79) = 0.215655E+01 +PKER_SDRYG( 2, 80) = 0.215777E+01 +PKER_SDRYG( 3, 1) = 0.215301E+01 +PKER_SDRYG( 3, 2) = 0.196106E+01 +PKER_SDRYG( 3, 3) = 0.178154E+01 +PKER_SDRYG( 3, 4) = 0.161399E+01 +PKER_SDRYG( 3, 5) = 0.145810E+01 +PKER_SDRYG( 3, 6) = 0.131365E+01 +PKER_SDRYG( 3, 7) = 0.118061E+01 +PKER_SDRYG( 3, 8) = 0.105881E+01 +PKER_SDRYG( 3, 9) = 0.948427E+00 +PKER_SDRYG( 3, 10) = 0.849613E+00 +PKER_SDRYG( 3, 11) = 0.762396E+00 +PKER_SDRYG( 3, 12) = 0.687541E+00 +PKER_SDRYG( 3, 13) = 0.625331E+00 +PKER_SDRYG( 3, 14) = 0.576279E+00 +PKER_SDRYG( 3, 15) = 0.541413E+00 +PKER_SDRYG( 3, 16) = 0.521621E+00 +PKER_SDRYG( 3, 17) = 0.517675E+00 +PKER_SDRYG( 3, 18) = 0.530574E+00 +PKER_SDRYG( 3, 19) = 0.560443E+00 +PKER_SDRYG( 3, 20) = 0.606854E+00 +PKER_SDRYG( 3, 21) = 0.668028E+00 +PKER_SDRYG( 3, 22) = 0.741035E+00 +PKER_SDRYG( 3, 23) = 0.822187E+00 +PKER_SDRYG( 3, 24) = 0.907057E+00 +PKER_SDRYG( 3, 25) = 0.991322E+00 +PKER_SDRYG( 3, 26) = 0.107147E+01 +PKER_SDRYG( 3, 27) = 0.114544E+01 +PKER_SDRYG( 3, 28) = 0.121245E+01 +PKER_SDRYG( 3, 29) = 0.127245E+01 +PKER_SDRYG( 3, 30) = 0.132580E+01 +PKER_SDRYG( 3, 31) = 0.137302E+01 +PKER_SDRYG( 3, 32) = 0.141473E+01 +PKER_SDRYG( 3, 33) = 0.145157E+01 +PKER_SDRYG( 3, 34) = 0.148421E+01 +PKER_SDRYG( 3, 35) = 0.151328E+01 +PKER_SDRYG( 3, 36) = 0.153931E+01 +PKER_SDRYG( 3, 37) = 0.156275E+01 +PKER_SDRYG( 3, 38) = 0.158397E+01 +PKER_SDRYG( 3, 39) = 0.160327E+01 +PKER_SDRYG( 3, 40) = 0.162090E+01 +PKER_SDRYG( 3, 41) = 0.163707E+01 +PKER_SDRYG( 3, 42) = 0.165195E+01 +PKER_SDRYG( 3, 43) = 0.166569E+01 +PKER_SDRYG( 3, 44) = 0.167839E+01 +PKER_SDRYG( 3, 45) = 0.169017E+01 +PKER_SDRYG( 3, 46) = 0.170112E+01 +PKER_SDRYG( 3, 47) = 0.171130E+01 +PKER_SDRYG( 3, 48) = 0.172079E+01 +PKER_SDRYG( 3, 49) = 0.172965E+01 +PKER_SDRYG( 3, 50) = 0.173791E+01 +PKER_SDRYG( 3, 51) = 0.174564E+01 +PKER_SDRYG( 3, 52) = 0.175287E+01 +PKER_SDRYG( 3, 53) = 0.175963E+01 +PKER_SDRYG( 3, 54) = 0.176596E+01 +PKER_SDRYG( 3, 55) = 0.177190E+01 +PKER_SDRYG( 3, 56) = 0.177746E+01 +PKER_SDRYG( 3, 57) = 0.178267E+01 +PKER_SDRYG( 3, 58) = 0.178755E+01 +PKER_SDRYG( 3, 59) = 0.179214E+01 +PKER_SDRYG( 3, 60) = 0.179644E+01 +PKER_SDRYG( 3, 61) = 0.180047E+01 +PKER_SDRYG( 3, 62) = 0.180425E+01 +PKER_SDRYG( 3, 63) = 0.180781E+01 +PKER_SDRYG( 3, 64) = 0.181114E+01 +PKER_SDRYG( 3, 65) = 0.181427E+01 +PKER_SDRYG( 3, 66) = 0.181720E+01 +PKER_SDRYG( 3, 67) = 0.181996E+01 +PKER_SDRYG( 3, 68) = 0.182255E+01 +PKER_SDRYG( 3, 69) = 0.182498E+01 +PKER_SDRYG( 3, 70) = 0.182726E+01 +PKER_SDRYG( 3, 71) = 0.182940E+01 +PKER_SDRYG( 3, 72) = 0.183141E+01 +PKER_SDRYG( 3, 73) = 0.183330E+01 +PKER_SDRYG( 3, 74) = 0.183507E+01 +PKER_SDRYG( 3, 75) = 0.183673E+01 +PKER_SDRYG( 3, 76) = 0.183829E+01 +PKER_SDRYG( 3, 77) = 0.183976E+01 +PKER_SDRYG( 3, 78) = 0.184114E+01 +PKER_SDRYG( 3, 79) = 0.184243E+01 +PKER_SDRYG( 3, 80) = 0.184365E+01 +PKER_SDRYG( 4, 1) = 0.229654E+01 +PKER_SDRYG( 4, 2) = 0.210356E+01 +PKER_SDRYG( 4, 3) = 0.192245E+01 +PKER_SDRYG( 4, 4) = 0.175260E+01 +PKER_SDRYG( 4, 5) = 0.159350E+01 +PKER_SDRYG( 4, 6) = 0.144476E+01 +PKER_SDRYG( 4, 7) = 0.130608E+01 +PKER_SDRYG( 4, 8) = 0.117720E+01 +PKER_SDRYG( 4, 9) = 0.105807E+01 +PKER_SDRYG( 4, 10) = 0.948604E+00 +PKER_SDRYG( 4, 11) = 0.849002E+00 +PKER_SDRYG( 4, 12) = 0.759416E+00 +PKER_SDRYG( 4, 13) = 0.680260E+00 +PKER_SDRYG( 4, 14) = 0.611882E+00 +PKER_SDRYG( 4, 15) = 0.554963E+00 +PKER_SDRYG( 4, 16) = 0.510479E+00 +PKER_SDRYG( 4, 17) = 0.479128E+00 +PKER_SDRYG( 4, 18) = 0.462033E+00 +PKER_SDRYG( 4, 19) = 0.460154E+00 +PKER_SDRYG( 4, 20) = 0.473966E+00 +PKER_SDRYG( 4, 21) = 0.503313E+00 +PKER_SDRYG( 4, 22) = 0.547021E+00 +PKER_SDRYG( 4, 23) = 0.602691E+00 +PKER_SDRYG( 4, 24) = 0.667130E+00 +PKER_SDRYG( 4, 25) = 0.736445E+00 +PKER_SDRYG( 4, 26) = 0.807101E+00 +PKER_SDRYG( 4, 27) = 0.875737E+00 +PKER_SDRYG( 4, 28) = 0.940003E+00 +PKER_SDRYG( 4, 29) = 0.998698E+00 +PKER_SDRYG( 4, 30) = 0.105152E+01 +PKER_SDRYG( 4, 31) = 0.109873E+01 +PKER_SDRYG( 4, 32) = 0.114082E+01 +PKER_SDRYG( 4, 33) = 0.117832E+01 +PKER_SDRYG( 4, 34) = 0.121173E+01 +PKER_SDRYG( 4, 35) = 0.124152E+01 +PKER_SDRYG( 4, 36) = 0.126818E+01 +PKER_SDRYG( 4, 37) = 0.129212E+01 +PKER_SDRYG( 4, 38) = 0.131373E+01 +PKER_SDRYG( 4, 39) = 0.133335E+01 +PKER_SDRYG( 4, 40) = 0.135123E+01 +PKER_SDRYG( 4, 41) = 0.136759E+01 +PKER_SDRYG( 4, 42) = 0.138262E+01 +PKER_SDRYG( 4, 43) = 0.139647E+01 +PKER_SDRYG( 4, 44) = 0.140927E+01 +PKER_SDRYG( 4, 45) = 0.142112E+01 +PKER_SDRYG( 4, 46) = 0.143212E+01 +PKER_SDRYG( 4, 47) = 0.144235E+01 +PKER_SDRYG( 4, 48) = 0.145188E+01 +PKER_SDRYG( 4, 49) = 0.146076E+01 +PKER_SDRYG( 4, 50) = 0.146905E+01 +PKER_SDRYG( 4, 51) = 0.147679E+01 +PKER_SDRYG( 4, 52) = 0.148403E+01 +PKER_SDRYG( 4, 53) = 0.149081E+01 +PKER_SDRYG( 4, 54) = 0.149715E+01 +PKER_SDRYG( 4, 55) = 0.150309E+01 +PKER_SDRYG( 4, 56) = 0.150865E+01 +PKER_SDRYG( 4, 57) = 0.151387E+01 +PKER_SDRYG( 4, 58) = 0.151876E+01 +PKER_SDRYG( 4, 59) = 0.152334E+01 +PKER_SDRYG( 4, 60) = 0.152764E+01 +PKER_SDRYG( 4, 61) = 0.153168E+01 +PKER_SDRYG( 4, 62) = 0.153546E+01 +PKER_SDRYG( 4, 63) = 0.153902E+01 +PKER_SDRYG( 4, 64) = 0.154235E+01 +PKER_SDRYG( 4, 65) = 0.154548E+01 +PKER_SDRYG( 4, 66) = 0.154842E+01 +PKER_SDRYG( 4, 67) = 0.155117E+01 +PKER_SDRYG( 4, 68) = 0.155376E+01 +PKER_SDRYG( 4, 69) = 0.155619E+01 +PKER_SDRYG( 4, 70) = 0.155847E+01 +PKER_SDRYG( 4, 71) = 0.156061E+01 +PKER_SDRYG( 4, 72) = 0.156262E+01 +PKER_SDRYG( 4, 73) = 0.156451E+01 +PKER_SDRYG( 4, 74) = 0.156628E+01 +PKER_SDRYG( 4, 75) = 0.156795E+01 +PKER_SDRYG( 4, 76) = 0.156951E+01 +PKER_SDRYG( 4, 77) = 0.157098E+01 +PKER_SDRYG( 4, 78) = 0.157235E+01 +PKER_SDRYG( 4, 79) = 0.157365E+01 +PKER_SDRYG( 4, 80) = 0.157486E+01 +PKER_SDRYG( 5, 1) = 0.242058E+01 +PKER_SDRYG( 5, 2) = 0.222747E+01 +PKER_SDRYG( 5, 3) = 0.204603E+01 +PKER_SDRYG( 5, 4) = 0.187558E+01 +PKER_SDRYG( 5, 5) = 0.171547E+01 +PKER_SDRYG( 5, 6) = 0.156517E+01 +PKER_SDRYG( 5, 7) = 0.142419E+01 +PKER_SDRYG( 5, 8) = 0.129215E+01 +PKER_SDRYG( 5, 9) = 0.116874E+01 +PKER_SDRYG( 5, 10) = 0.105374E+01 +PKER_SDRYG( 5, 11) = 0.947064E+00 +PKER_SDRYG( 5, 12) = 0.848754E+00 +PKER_SDRYG( 5, 13) = 0.758866E+00 +PKER_SDRYG( 5, 14) = 0.677714E+00 +PKER_SDRYG( 5, 15) = 0.605727E+00 +PKER_SDRYG( 5, 16) = 0.543389E+00 +PKER_SDRYG( 5, 17) = 0.491619E+00 +PKER_SDRYG( 5, 18) = 0.451355E+00 +PKER_SDRYG( 5, 19) = 0.423473E+00 +PKER_SDRYG( 5, 20) = 0.409129E+00 +PKER_SDRYG( 5, 21) = 0.409111E+00 +PKER_SDRYG( 5, 22) = 0.423458E+00 +PKER_SDRYG( 5, 23) = 0.451630E+00 +PKER_SDRYG( 5, 24) = 0.491797E+00 +PKER_SDRYG( 5, 25) = 0.541294E+00 +PKER_SDRYG( 5, 26) = 0.596703E+00 +PKER_SDRYG( 5, 27) = 0.654696E+00 +PKER_SDRYG( 5, 28) = 0.712443E+00 +PKER_SDRYG( 5, 29) = 0.767659E+00 +PKER_SDRYG( 5, 30) = 0.818920E+00 +PKER_SDRYG( 5, 31) = 0.865491E+00 +PKER_SDRYG( 5, 32) = 0.907343E+00 +PKER_SDRYG( 5, 33) = 0.944838E+00 +PKER_SDRYG( 5, 34) = 0.978432E+00 +PKER_SDRYG( 5, 35) = 0.100859E+01 +PKER_SDRYG( 5, 36) = 0.103569E+01 +PKER_SDRYG( 5, 37) = 0.106011E+01 +PKER_SDRYG( 5, 38) = 0.108214E+01 +PKER_SDRYG( 5, 39) = 0.110210E+01 +PKER_SDRYG( 5, 40) = 0.112025E+01 +PKER_SDRYG( 5, 41) = 0.113682E+01 +PKER_SDRYG( 5, 42) = 0.115202E+01 +PKER_SDRYG( 5, 43) = 0.116600E+01 +PKER_SDRYG( 5, 44) = 0.117890E+01 +PKER_SDRYG( 5, 45) = 0.119084E+01 +PKER_SDRYG( 5, 46) = 0.120190E+01 +PKER_SDRYG( 5, 47) = 0.121218E+01 +PKER_SDRYG( 5, 48) = 0.122174E+01 +PKER_SDRYG( 5, 49) = 0.123065E+01 +PKER_SDRYG( 5, 50) = 0.123897E+01 +PKER_SDRYG( 5, 51) = 0.124673E+01 +PKER_SDRYG( 5, 52) = 0.125398E+01 +PKER_SDRYG( 5, 53) = 0.126077E+01 +PKER_SDRYG( 5, 54) = 0.126712E+01 +PKER_SDRYG( 5, 55) = 0.127307E+01 +PKER_SDRYG( 5, 56) = 0.127864E+01 +PKER_SDRYG( 5, 57) = 0.128386E+01 +PKER_SDRYG( 5, 58) = 0.128875E+01 +PKER_SDRYG( 5, 59) = 0.129334E+01 +PKER_SDRYG( 5, 60) = 0.129764E+01 +PKER_SDRYG( 5, 61) = 0.130168E+01 +PKER_SDRYG( 5, 62) = 0.130547E+01 +PKER_SDRYG( 5, 63) = 0.130902E+01 +PKER_SDRYG( 5, 64) = 0.131236E+01 +PKER_SDRYG( 5, 65) = 0.131549E+01 +PKER_SDRYG( 5, 66) = 0.131842E+01 +PKER_SDRYG( 5, 67) = 0.132118E+01 +PKER_SDRYG( 5, 68) = 0.132377E+01 +PKER_SDRYG( 5, 69) = 0.132620E+01 +PKER_SDRYG( 5, 70) = 0.132848E+01 +PKER_SDRYG( 5, 71) = 0.133062E+01 +PKER_SDRYG( 5, 72) = 0.133263E+01 +PKER_SDRYG( 5, 73) = 0.133452E+01 +PKER_SDRYG( 5, 74) = 0.133629E+01 +PKER_SDRYG( 5, 75) = 0.133796E+01 +PKER_SDRYG( 5, 76) = 0.133952E+01 +PKER_SDRYG( 5, 77) = 0.134098E+01 +PKER_SDRYG( 5, 78) = 0.134236E+01 +PKER_SDRYG( 5, 79) = 0.134365E+01 +PKER_SDRYG( 5, 80) = 0.134487E+01 +PKER_SDRYG( 6, 1) = 0.252692E+01 +PKER_SDRYG( 6, 2) = 0.233392E+01 +PKER_SDRYG( 6, 3) = 0.215256E+01 +PKER_SDRYG( 6, 4) = 0.198212E+01 +PKER_SDRYG( 6, 5) = 0.182193E+01 +PKER_SDRYG( 6, 6) = 0.167134E+01 +PKER_SDRYG( 6, 7) = 0.152979E+01 +PKER_SDRYG( 6, 8) = 0.139676E+01 +PKER_SDRYG( 6, 9) = 0.127181E+01 +PKER_SDRYG( 6, 10) = 0.115455E+01 +PKER_SDRYG( 6, 11) = 0.104468E+01 +PKER_SDRYG( 6, 12) = 0.942046E+00 +PKER_SDRYG( 6, 13) = 0.846498E+00 +PKER_SDRYG( 6, 14) = 0.758078E+00 +PKER_SDRYG( 6, 15) = 0.676915E+00 +PKER_SDRYG( 6, 16) = 0.603393E+00 +PKER_SDRYG( 6, 17) = 0.537925E+00 +PKER_SDRYG( 6, 18) = 0.481299E+00 +PKER_SDRYG( 6, 19) = 0.434300E+00 +PKER_SDRYG( 6, 20) = 0.397962E+00 +PKER_SDRYG( 6, 21) = 0.373555E+00 +PKER_SDRYG( 6, 22) = 0.361810E+00 +PKER_SDRYG( 6, 23) = 0.363261E+00 +PKER_SDRYG( 6, 24) = 0.377804E+00 +PKER_SDRYG( 6, 25) = 0.404141E+00 +PKER_SDRYG( 6, 26) = 0.440111E+00 +PKER_SDRYG( 6, 27) = 0.482932E+00 +PKER_SDRYG( 6, 28) = 0.529526E+00 +PKER_SDRYG( 6, 29) = 0.577250E+00 +PKER_SDRYG( 6, 30) = 0.623904E+00 +PKER_SDRYG( 6, 31) = 0.668115E+00 +PKER_SDRYG( 6, 32) = 0.708971E+00 +PKER_SDRYG( 6, 33) = 0.746106E+00 +PKER_SDRYG( 6, 34) = 0.779586E+00 +PKER_SDRYG( 6, 35) = 0.809709E+00 +PKER_SDRYG( 6, 36) = 0.836864E+00 +PKER_SDRYG( 6, 37) = 0.861427E+00 +PKER_SDRYG( 6, 38) = 0.883701E+00 +PKER_SDRYG( 6, 39) = 0.903939E+00 +PKER_SDRYG( 6, 40) = 0.922359E+00 +PKER_SDRYG( 6, 41) = 0.939166E+00 +PKER_SDRYG( 6, 42) = 0.954549E+00 +PKER_SDRYG( 6, 43) = 0.968675E+00 +PKER_SDRYG( 6, 44) = 0.981689E+00 +PKER_SDRYG( 6, 45) = 0.993712E+00 +PKER_SDRYG( 6, 46) = 0.100485E+01 +PKER_SDRYG( 6, 47) = 0.101518E+01 +PKER_SDRYG( 6, 48) = 0.102479E+01 +PKER_SDRYG( 6, 49) = 0.103373E+01 +PKER_SDRYG( 6, 50) = 0.104207E+01 +PKER_SDRYG( 6, 51) = 0.104986E+01 +PKER_SDRYG( 6, 52) = 0.105713E+01 +PKER_SDRYG( 6, 53) = 0.106393E+01 +PKER_SDRYG( 6, 54) = 0.107029E+01 +PKER_SDRYG( 6, 55) = 0.107624E+01 +PKER_SDRYG( 6, 56) = 0.108182E+01 +PKER_SDRYG( 6, 57) = 0.108704E+01 +PKER_SDRYG( 6, 58) = 0.109194E+01 +PKER_SDRYG( 6, 59) = 0.109653E+01 +PKER_SDRYG( 6, 60) = 0.110084E+01 +PKER_SDRYG( 6, 61) = 0.110488E+01 +PKER_SDRYG( 6, 62) = 0.110866E+01 +PKER_SDRYG( 6, 63) = 0.111222E+01 +PKER_SDRYG( 6, 64) = 0.111556E+01 +PKER_SDRYG( 6, 65) = 0.111869E+01 +PKER_SDRYG( 6, 66) = 0.112162E+01 +PKER_SDRYG( 6, 67) = 0.112438E+01 +PKER_SDRYG( 6, 68) = 0.112697E+01 +PKER_SDRYG( 6, 69) = 0.112940E+01 +PKER_SDRYG( 6, 70) = 0.113168E+01 +PKER_SDRYG( 6, 71) = 0.113382E+01 +PKER_SDRYG( 6, 72) = 0.113583E+01 +PKER_SDRYG( 6, 73) = 0.113772E+01 +PKER_SDRYG( 6, 74) = 0.113949E+01 +PKER_SDRYG( 6, 75) = 0.114116E+01 +PKER_SDRYG( 6, 76) = 0.114272E+01 +PKER_SDRYG( 6, 77) = 0.114419E+01 +PKER_SDRYG( 6, 78) = 0.114556E+01 +PKER_SDRYG( 6, 79) = 0.114686E+01 +PKER_SDRYG( 6, 80) = 0.114807E+01 +PKER_SDRYG( 7, 1) = 0.261786E+01 +PKER_SDRYG( 7, 2) = 0.242499E+01 +PKER_SDRYG( 7, 3) = 0.224378E+01 +PKER_SDRYG( 7, 4) = 0.207350E+01 +PKER_SDRYG( 7, 5) = 0.191346E+01 +PKER_SDRYG( 7, 6) = 0.176300E+01 +PKER_SDRYG( 7, 7) = 0.162153E+01 +PKER_SDRYG( 7, 8) = 0.148846E+01 +PKER_SDRYG( 7, 9) = 0.136328E+01 +PKER_SDRYG( 7, 10) = 0.124549E+01 +PKER_SDRYG( 7, 11) = 0.113468E+01 +PKER_SDRYG( 7, 12) = 0.103050E+01 +PKER_SDRYG( 7, 13) = 0.932669E+00 +PKER_SDRYG( 7, 14) = 0.840960E+00 +PKER_SDRYG( 7, 15) = 0.755294E+00 +PKER_SDRYG( 7, 16) = 0.675723E+00 +PKER_SDRYG( 7, 17) = 0.602410E+00 +PKER_SDRYG( 7, 18) = 0.535732E+00 +PKER_SDRYG( 7, 19) = 0.476253E+00 +PKER_SDRYG( 7, 20) = 0.424743E+00 +PKER_SDRYG( 7, 21) = 0.382214E+00 +PKER_SDRYG( 7, 22) = 0.349787E+00 +PKER_SDRYG( 7, 23) = 0.328527E+00 +PKER_SDRYG( 7, 24) = 0.319129E+00 +PKER_SDRYG( 7, 25) = 0.321804E+00 +PKER_SDRYG( 7, 26) = 0.335925E+00 +PKER_SDRYG( 7, 27) = 0.359789E+00 +PKER_SDRYG( 7, 28) = 0.391183E+00 +PKER_SDRYG( 7, 29) = 0.427436E+00 +PKER_SDRYG( 7, 30) = 0.466046E+00 +PKER_SDRYG( 7, 31) = 0.504837E+00 +PKER_SDRYG( 7, 32) = 0.542368E+00 +PKER_SDRYG( 7, 33) = 0.577763E+00 +PKER_SDRYG( 7, 34) = 0.610469E+00 +PKER_SDRYG( 7, 35) = 0.640344E+00 +PKER_SDRYG( 7, 36) = 0.667411E+00 +PKER_SDRYG( 7, 37) = 0.691907E+00 +PKER_SDRYG( 7, 38) = 0.714147E+00 +PKER_SDRYG( 7, 39) = 0.734403E+00 +PKER_SDRYG( 7, 40) = 0.752915E+00 +PKER_SDRYG( 7, 41) = 0.769870E+00 +PKER_SDRYG( 7, 42) = 0.785417E+00 +PKER_SDRYG( 7, 43) = 0.799696E+00 +PKER_SDRYG( 7, 44) = 0.812835E+00 +PKER_SDRYG( 7, 45) = 0.824958E+00 +PKER_SDRYG( 7, 46) = 0.836170E+00 +PKER_SDRYG( 7, 47) = 0.846564E+00 +PKER_SDRYG( 7, 48) = 0.856219E+00 +PKER_SDRYG( 7, 49) = 0.865201E+00 +PKER_SDRYG( 7, 50) = 0.873570E+00 +PKER_SDRYG( 7, 51) = 0.881376E+00 +PKER_SDRYG( 7, 52) = 0.888666E+00 +PKER_SDRYG( 7, 53) = 0.895479E+00 +PKER_SDRYG( 7, 54) = 0.901851E+00 +PKER_SDRYG( 7, 55) = 0.907814E+00 +PKER_SDRYG( 7, 56) = 0.913398E+00 +PKER_SDRYG( 7, 57) = 0.918628E+00 +PKER_SDRYG( 7, 58) = 0.923530E+00 +PKER_SDRYG( 7, 59) = 0.928125E+00 +PKER_SDRYG( 7, 60) = 0.932433E+00 +PKER_SDRYG( 7, 61) = 0.936474E+00 +PKER_SDRYG( 7, 62) = 0.940264E+00 +PKER_SDRYG( 7, 63) = 0.943820E+00 +PKER_SDRYG( 7, 64) = 0.947157E+00 +PKER_SDRYG( 7, 65) = 0.950288E+00 +PKER_SDRYG( 7, 66) = 0.953227E+00 +PKER_SDRYG( 7, 67) = 0.955985E+00 +PKER_SDRYG( 7, 68) = 0.958574E+00 +PKER_SDRYG( 7, 69) = 0.961004E+00 +PKER_SDRYG( 7, 70) = 0.963286E+00 +PKER_SDRYG( 7, 71) = 0.965428E+00 +PKER_SDRYG( 7, 72) = 0.967438E+00 +PKER_SDRYG( 7, 73) = 0.969326E+00 +PKER_SDRYG( 7, 74) = 0.971099E+00 +PKER_SDRYG( 7, 75) = 0.972763E+00 +PKER_SDRYG( 7, 76) = 0.974325E+00 +PKER_SDRYG( 7, 77) = 0.975792E+00 +PKER_SDRYG( 7, 78) = 0.977169E+00 +PKER_SDRYG( 7, 79) = 0.978462E+00 +PKER_SDRYG( 7, 80) = 0.979677E+00 +PKER_SDRYG( 8, 1) = 0.269561E+01 +PKER_SDRYG( 8, 2) = 0.250283E+01 +PKER_SDRYG( 8, 3) = 0.232174E+01 +PKER_SDRYG( 8, 4) = 0.215161E+01 +PKER_SDRYG( 8, 5) = 0.199174E+01 +PKER_SDRYG( 8, 6) = 0.184149E+01 +PKER_SDRYG( 8, 7) = 0.170023E+01 +PKER_SDRYG( 8, 8) = 0.156739E+01 +PKER_SDRYG( 8, 9) = 0.144242E+01 +PKER_SDRYG( 8, 10) = 0.132479E+01 +PKER_SDRYG( 8, 11) = 0.121403E+01 +PKER_SDRYG( 8, 12) = 0.110969E+01 +PKER_SDRYG( 8, 13) = 0.101137E+01 +PKER_SDRYG( 8, 14) = 0.918736E+00 +PKER_SDRYG( 8, 15) = 0.831495E+00 +PKER_SDRYG( 8, 16) = 0.749451E+00 +PKER_SDRYG( 8, 17) = 0.672563E+00 +PKER_SDRYG( 8, 18) = 0.600835E+00 +PKER_SDRYG( 8, 19) = 0.534485E+00 +PKER_SDRYG( 8, 20) = 0.473951E+00 +PKER_SDRYG( 8, 21) = 0.419909E+00 +PKER_SDRYG( 8, 22) = 0.373149E+00 +PKER_SDRYG( 8, 23) = 0.334877E+00 +PKER_SDRYG( 8, 24) = 0.306095E+00 +PKER_SDRYG( 8, 25) = 0.287726E+00 +PKER_SDRYG( 8, 26) = 0.280481E+00 +PKER_SDRYG( 8, 27) = 0.283946E+00 +PKER_SDRYG( 8, 28) = 0.297076E+00 +PKER_SDRYG( 8, 29) = 0.318238E+00 +PKER_SDRYG( 8, 30) = 0.345049E+00 +PKER_SDRYG( 8, 31) = 0.375221E+00 +PKER_SDRYG( 8, 32) = 0.406792E+00 +PKER_SDRYG( 8, 33) = 0.438182E+00 +PKER_SDRYG( 8, 34) = 0.468400E+00 +PKER_SDRYG( 8, 35) = 0.496851E+00 +PKER_SDRYG( 8, 36) = 0.523262E+00 +PKER_SDRYG( 8, 37) = 0.547514E+00 +PKER_SDRYG( 8, 38) = 0.569649E+00 +PKER_SDRYG( 8, 39) = 0.589826E+00 +PKER_SDRYG( 8, 40) = 0.608254E+00 +PKER_SDRYG( 8, 41) = 0.625149E+00 +PKER_SDRYG( 8, 42) = 0.640693E+00 +PKER_SDRYG( 8, 43) = 0.655025E+00 +PKER_SDRYG( 8, 44) = 0.668253E+00 +PKER_SDRYG( 8, 45) = 0.680470E+00 +PKER_SDRYG( 8, 46) = 0.691766E+00 +PKER_SDRYG( 8, 47) = 0.702228E+00 +PKER_SDRYG( 8, 48) = 0.711935E+00 +PKER_SDRYG( 8, 49) = 0.720959E+00 +PKER_SDRYG( 8, 50) = 0.729360E+00 +PKER_SDRYG( 8, 51) = 0.737193E+00 +PKER_SDRYG( 8, 52) = 0.744502E+00 +PKER_SDRYG( 8, 53) = 0.751331E+00 +PKER_SDRYG( 8, 54) = 0.757715E+00 +PKER_SDRYG( 8, 55) = 0.763688E+00 +PKER_SDRYG( 8, 56) = 0.769279E+00 +PKER_SDRYG( 8, 57) = 0.774516E+00 +PKER_SDRYG( 8, 58) = 0.779422E+00 +PKER_SDRYG( 8, 59) = 0.784021E+00 +PKER_SDRYG( 8, 60) = 0.788332E+00 +PKER_SDRYG( 8, 61) = 0.792375E+00 +PKER_SDRYG( 8, 62) = 0.796167E+00 +PKER_SDRYG( 8, 63) = 0.799725E+00 +PKER_SDRYG( 8, 64) = 0.803062E+00 +PKER_SDRYG( 8, 65) = 0.806194E+00 +PKER_SDRYG( 8, 66) = 0.809134E+00 +PKER_SDRYG( 8, 67) = 0.811893E+00 +PKER_SDRYG( 8, 68) = 0.814482E+00 +PKER_SDRYG( 8, 69) = 0.816913E+00 +PKER_SDRYG( 8, 70) = 0.819194E+00 +PKER_SDRYG( 8, 71) = 0.821336E+00 +PKER_SDRYG( 8, 72) = 0.823347E+00 +PKER_SDRYG( 8, 73) = 0.825235E+00 +PKER_SDRYG( 8, 74) = 0.827008E+00 +PKER_SDRYG( 8, 75) = 0.828672E+00 +PKER_SDRYG( 8, 76) = 0.830234E+00 +PKER_SDRYG( 8, 77) = 0.831701E+00 +PKER_SDRYG( 8, 78) = 0.833078E+00 +PKER_SDRYG( 8, 79) = 0.834372E+00 +PKER_SDRYG( 8, 80) = 0.835586E+00 +PKER_SDRYG( 9, 1) = 0.276207E+01 +PKER_SDRYG( 9, 2) = 0.256937E+01 +PKER_SDRYG( 9, 3) = 0.238837E+01 +PKER_SDRYG( 9, 4) = 0.221834E+01 +PKER_SDRYG( 9, 5) = 0.205861E+01 +PKER_SDRYG( 9, 6) = 0.190852E+01 +PKER_SDRYG( 9, 7) = 0.176746E+01 +PKER_SDRYG( 9, 8) = 0.163486E+01 +PKER_SDRYG( 9, 9) = 0.151015E+01 +PKER_SDRYG( 9, 10) = 0.139283E+01 +PKER_SDRYG( 9, 11) = 0.128239E+01 +PKER_SDRYG( 9, 12) = 0.117836E+01 +PKER_SDRYG( 9, 13) = 0.108030E+01 +PKER_SDRYG( 9, 14) = 0.987804E+00 +PKER_SDRYG( 9, 15) = 0.900480E+00 +PKER_SDRYG( 9, 16) = 0.818006E+00 +PKER_SDRYG( 9, 17) = 0.740119E+00 +PKER_SDRYG( 9, 18) = 0.666640E+00 +PKER_SDRYG( 9, 19) = 0.597469E+00 +PKER_SDRYG( 9, 20) = 0.532692E+00 +PKER_SDRYG( 9, 21) = 0.472590E+00 +PKER_SDRYG( 9, 22) = 0.417593E+00 +PKER_SDRYG( 9, 23) = 0.368487E+00 +PKER_SDRYG( 9, 24) = 0.326216E+00 +PKER_SDRYG( 9, 25) = 0.291847E+00 +PKER_SDRYG( 9, 26) = 0.266518E+00 +PKER_SDRYG( 9, 27) = 0.250973E+00 +PKER_SDRYG( 9, 28) = 0.245401E+00 +PKER_SDRYG( 9, 29) = 0.249224E+00 +PKER_SDRYG( 9, 30) = 0.261135E+00 +PKER_SDRYG( 9, 31) = 0.279371E+00 +PKER_SDRYG( 9, 32) = 0.301823E+00 +PKER_SDRYG( 9, 33) = 0.326652E+00 +PKER_SDRYG( 9, 34) = 0.352342E+00 +PKER_SDRYG( 9, 35) = 0.377786E+00 +PKER_SDRYG( 9, 36) = 0.402202E+00 +PKER_SDRYG( 9, 37) = 0.425256E+00 +PKER_SDRYG( 9, 38) = 0.446772E+00 +PKER_SDRYG( 9, 39) = 0.466663E+00 +PKER_SDRYG( 9, 40) = 0.484977E+00 +PKER_SDRYG( 9, 41) = 0.501779E+00 +PKER_SDRYG( 9, 42) = 0.517214E+00 +PKER_SDRYG( 9, 43) = 0.531452E+00 +PKER_SDRYG( 9, 44) = 0.544618E+00 +PKER_SDRYG( 9, 45) = 0.556824E+00 +PKER_SDRYG( 9, 46) = 0.568153E+00 +PKER_SDRYG( 9, 47) = 0.578667E+00 +PKER_SDRYG( 9, 48) = 0.588428E+00 +PKER_SDRYG( 9, 49) = 0.597497E+00 +PKER_SDRYG( 9, 50) = 0.605935E+00 +PKER_SDRYG( 9, 51) = 0.613795E+00 +PKER_SDRYG( 9, 52) = 0.621127E+00 +PKER_SDRYG( 9, 53) = 0.627973E+00 +PKER_SDRYG( 9, 54) = 0.634371E+00 +PKER_SDRYG( 9, 55) = 0.640354E+00 +PKER_SDRYG( 9, 56) = 0.645954E+00 +PKER_SDRYG( 9, 57) = 0.651197E+00 +PKER_SDRYG( 9, 58) = 0.656109E+00 +PKER_SDRYG( 9, 59) = 0.660711E+00 +PKER_SDRYG( 9, 60) = 0.665026E+00 +PKER_SDRYG( 9, 61) = 0.669071E+00 +PKER_SDRYG( 9, 62) = 0.672865E+00 +PKER_SDRYG( 9, 63) = 0.676424E+00 +PKER_SDRYG( 9, 64) = 0.679763E+00 +PKER_SDRYG( 9, 65) = 0.682897E+00 +PKER_SDRYG( 9, 66) = 0.685837E+00 +PKER_SDRYG( 9, 67) = 0.688596E+00 +PKER_SDRYG( 9, 68) = 0.691186E+00 +PKER_SDRYG( 9, 69) = 0.693617E+00 +PKER_SDRYG( 9, 70) = 0.695899E+00 +PKER_SDRYG( 9, 71) = 0.698041E+00 +PKER_SDRYG( 9, 72) = 0.700052E+00 +PKER_SDRYG( 9, 73) = 0.701940E+00 +PKER_SDRYG( 9, 74) = 0.703713E+00 +PKER_SDRYG( 9, 75) = 0.705377E+00 +PKER_SDRYG( 9, 76) = 0.706940E+00 +PKER_SDRYG( 9, 77) = 0.708407E+00 +PKER_SDRYG( 9, 78) = 0.709784E+00 +PKER_SDRYG( 9, 79) = 0.711077E+00 +PKER_SDRYG( 9, 80) = 0.712292E+00 +PKER_SDRYG( 10, 1) = 0.281890E+01 +PKER_SDRYG( 10, 2) = 0.262625E+01 +PKER_SDRYG( 10, 3) = 0.244531E+01 +PKER_SDRYG( 10, 4) = 0.227537E+01 +PKER_SDRYG( 10, 5) = 0.211573E+01 +PKER_SDRYG( 10, 6) = 0.196576E+01 +PKER_SDRYG( 10, 7) = 0.182485E+01 +PKER_SDRYG( 10, 8) = 0.169243E+01 +PKER_SDRYG( 10, 9) = 0.156795E+01 +PKER_SDRYG( 10, 10) = 0.145089E+01 +PKER_SDRYG( 10, 11) = 0.134077E+01 +PKER_SDRYG( 10, 12) = 0.123711E+01 +PKER_SDRYG( 10, 13) = 0.113947E+01 +PKER_SDRYG( 10, 14) = 0.104741E+01 +PKER_SDRYG( 10, 15) = 0.960534E+00 +PKER_SDRYG( 10, 16) = 0.878447E+00 +PKER_SDRYG( 10, 17) = 0.800800E+00 +PKER_SDRYG( 10, 18) = 0.727272E+00 +PKER_SDRYG( 10, 19) = 0.657611E+00 +PKER_SDRYG( 10, 20) = 0.591632E+00 +PKER_SDRYG( 10, 21) = 0.529264E+00 +PKER_SDRYG( 10, 22) = 0.470668E+00 +PKER_SDRYG( 10, 23) = 0.416097E+00 +PKER_SDRYG( 10, 24) = 0.366106E+00 +PKER_SDRYG( 10, 25) = 0.321553E+00 +PKER_SDRYG( 10, 26) = 0.283464E+00 +PKER_SDRYG( 10, 27) = 0.252856E+00 +PKER_SDRYG( 10, 28) = 0.230814E+00 +PKER_SDRYG( 10, 29) = 0.217753E+00 +PKER_SDRYG( 10, 30) = 0.213511E+00 +PKER_SDRYG( 10, 31) = 0.217435E+00 +PKER_SDRYG( 10, 32) = 0.227916E+00 +PKER_SDRYG( 10, 33) = 0.243286E+00 +PKER_SDRYG( 10, 34) = 0.261931E+00 +PKER_SDRYG( 10, 35) = 0.282270E+00 +PKER_SDRYG( 10, 36) = 0.303153E+00 +PKER_SDRYG( 10, 37) = 0.323799E+00 +PKER_SDRYG( 10, 38) = 0.343682E+00 +PKER_SDRYG( 10, 39) = 0.362526E+00 +PKER_SDRYG( 10, 40) = 0.380218E+00 +PKER_SDRYG( 10, 41) = 0.396712E+00 +PKER_SDRYG( 10, 42) = 0.412002E+00 +PKER_SDRYG( 10, 43) = 0.426131E+00 +PKER_SDRYG( 10, 44) = 0.439189E+00 +PKER_SDRYG( 10, 45) = 0.451282E+00 +PKER_SDRYG( 10, 46) = 0.462518E+00 +PKER_SDRYG( 10, 47) = 0.472980E+00 +PKER_SDRYG( 10, 48) = 0.482733E+00 +PKER_SDRYG( 10, 49) = 0.491822E+00 +PKER_SDRYG( 10, 50) = 0.500291E+00 +PKER_SDRYG( 10, 51) = 0.508181E+00 +PKER_SDRYG( 10, 52) = 0.515537E+00 +PKER_SDRYG( 10, 53) = 0.522403E+00 +PKER_SDRYG( 10, 54) = 0.528816E+00 +PKER_SDRYG( 10, 55) = 0.534811E+00 +PKER_SDRYG( 10, 56) = 0.540420E+00 +PKER_SDRYG( 10, 57) = 0.545671E+00 +PKER_SDRYG( 10, 58) = 0.550588E+00 +PKER_SDRYG( 10, 59) = 0.555195E+00 +PKER_SDRYG( 10, 60) = 0.559513E+00 +PKER_SDRYG( 10, 61) = 0.563561E+00 +PKER_SDRYG( 10, 62) = 0.567358E+00 +PKER_SDRYG( 10, 63) = 0.570918E+00 +PKER_SDRYG( 10, 64) = 0.574259E+00 +PKER_SDRYG( 10, 65) = 0.577393E+00 +PKER_SDRYG( 10, 66) = 0.580334E+00 +PKER_SDRYG( 10, 67) = 0.583094E+00 +PKER_SDRYG( 10, 68) = 0.585685E+00 +PKER_SDRYG( 10, 69) = 0.588116E+00 +PKER_SDRYG( 10, 70) = 0.590398E+00 +PKER_SDRYG( 10, 71) = 0.592541E+00 +PKER_SDRYG( 10, 72) = 0.594552E+00 +PKER_SDRYG( 10, 73) = 0.596440E+00 +PKER_SDRYG( 10, 74) = 0.598213E+00 +PKER_SDRYG( 10, 75) = 0.599877E+00 +PKER_SDRYG( 10, 76) = 0.601440E+00 +PKER_SDRYG( 10, 77) = 0.602907E+00 +PKER_SDRYG( 10, 78) = 0.604284E+00 +PKER_SDRYG( 10, 79) = 0.605578E+00 +PKER_SDRYG( 10, 80) = 0.606792E+00 +PKER_SDRYG( 11, 1) = 0.286750E+01 +PKER_SDRYG( 11, 2) = 0.267488E+01 +PKER_SDRYG( 11, 3) = 0.249399E+01 +PKER_SDRYG( 11, 4) = 0.232410E+01 +PKER_SDRYG( 11, 5) = 0.216454E+01 +PKER_SDRYG( 11, 6) = 0.201465E+01 +PKER_SDRYG( 11, 7) = 0.187385E+01 +PKER_SDRYG( 11, 8) = 0.174156E+01 +PKER_SDRYG( 11, 9) = 0.161724E+01 +PKER_SDRYG( 11, 10) = 0.150038E+01 +PKER_SDRYG( 11, 11) = 0.139051E+01 +PKER_SDRYG( 11, 12) = 0.128715E+01 +PKER_SDRYG( 11, 13) = 0.118986E+01 +PKER_SDRYG( 11, 14) = 0.109824E+01 +PKER_SDRYG( 11, 15) = 0.101186E+01 +PKER_SDRYG( 11, 16) = 0.930332E+00 +PKER_SDRYG( 11, 17) = 0.853282E+00 +PKER_SDRYG( 11, 18) = 0.780348E+00 +PKER_SDRYG( 11, 19) = 0.711193E+00 +PKER_SDRYG( 11, 20) = 0.645511E+00 +PKER_SDRYG( 11, 21) = 0.583060E+00 +PKER_SDRYG( 11, 22) = 0.523685E+00 +PKER_SDRYG( 11, 23) = 0.467360E+00 +PKER_SDRYG( 11, 24) = 0.414210E+00 +PKER_SDRYG( 11, 25) = 0.364609E+00 +PKER_SDRYG( 11, 26) = 0.319253E+00 +PKER_SDRYG( 11, 27) = 0.278944E+00 +PKER_SDRYG( 11, 28) = 0.244812E+00 +PKER_SDRYG( 11, 29) = 0.217874E+00 +PKER_SDRYG( 11, 30) = 0.198828E+00 +PKER_SDRYG( 11, 31) = 0.187973E+00 +PKER_SDRYG( 11, 32) = 0.184872E+00 +PKER_SDRYG( 11, 33) = 0.188508E+00 +PKER_SDRYG( 11, 34) = 0.197506E+00 +PKER_SDRYG( 11, 35) = 0.210328E+00 +PKER_SDRYG( 11, 36) = 0.225647E+00 +PKER_SDRYG( 11, 37) = 0.242242E+00 +PKER_SDRYG( 11, 38) = 0.259254E+00 +PKER_SDRYG( 11, 39) = 0.276128E+00 +PKER_SDRYG( 11, 40) = 0.292461E+00 +PKER_SDRYG( 11, 41) = 0.308005E+00 +PKER_SDRYG( 11, 42) = 0.322690E+00 +PKER_SDRYG( 11, 43) = 0.336481E+00 +PKER_SDRYG( 11, 44) = 0.349355E+00 +PKER_SDRYG( 11, 45) = 0.361342E+00 +PKER_SDRYG( 11, 46) = 0.372471E+00 +PKER_SDRYG( 11, 47) = 0.382818E+00 +PKER_SDRYG( 11, 48) = 0.392468E+00 +PKER_SDRYG( 11, 49) = 0.401482E+00 +PKER_SDRYG( 11, 50) = 0.409913E+00 +PKER_SDRYG( 11, 51) = 0.417799E+00 +PKER_SDRYG( 11, 52) = 0.425169E+00 +PKER_SDRYG( 11, 53) = 0.432052E+00 +PKER_SDRYG( 11, 54) = 0.438481E+00 +PKER_SDRYG( 11, 55) = 0.444490E+00 +PKER_SDRYG( 11, 56) = 0.450109E+00 +PKER_SDRYG( 11, 57) = 0.455368E+00 +PKER_SDRYG( 11, 58) = 0.460292E+00 +PKER_SDRYG( 11, 59) = 0.464904E+00 +PKER_SDRYG( 11, 60) = 0.469226E+00 +PKER_SDRYG( 11, 61) = 0.473277E+00 +PKER_SDRYG( 11, 62) = 0.477076E+00 +PKER_SDRYG( 11, 63) = 0.480638E+00 +PKER_SDRYG( 11, 64) = 0.483980E+00 +PKER_SDRYG( 11, 65) = 0.487116E+00 +PKER_SDRYG( 11, 66) = 0.490058E+00 +PKER_SDRYG( 11, 67) = 0.492818E+00 +PKER_SDRYG( 11, 68) = 0.495409E+00 +PKER_SDRYG( 11, 69) = 0.497841E+00 +PKER_SDRYG( 11, 70) = 0.500124E+00 +PKER_SDRYG( 11, 71) = 0.502267E+00 +PKER_SDRYG( 11, 72) = 0.504278E+00 +PKER_SDRYG( 11, 73) = 0.506166E+00 +PKER_SDRYG( 11, 74) = 0.507939E+00 +PKER_SDRYG( 11, 75) = 0.509604E+00 +PKER_SDRYG( 11, 76) = 0.511166E+00 +PKER_SDRYG( 11, 77) = 0.512633E+00 +PKER_SDRYG( 11, 78) = 0.514011E+00 +PKER_SDRYG( 11, 79) = 0.515304E+00 +PKER_SDRYG( 11, 80) = 0.516519E+00 +PKER_SDRYG( 12, 1) = 0.290906E+01 +PKER_SDRYG( 12, 2) = 0.271647E+01 +PKER_SDRYG( 12, 3) = 0.253562E+01 +PKER_SDRYG( 12, 4) = 0.236577E+01 +PKER_SDRYG( 12, 5) = 0.220625E+01 +PKER_SDRYG( 12, 6) = 0.205643E+01 +PKER_SDRYG( 12, 7) = 0.191570E+01 +PKER_SDRYG( 12, 8) = 0.178350E+01 +PKER_SDRYG( 12, 9) = 0.165930E+01 +PKER_SDRYG( 12, 10) = 0.154259E+01 +PKER_SDRYG( 12, 11) = 0.143289E+01 +PKER_SDRYG( 12, 12) = 0.132974E+01 +PKER_SDRYG( 12, 13) = 0.123273E+01 +PKER_SDRYG( 12, 14) = 0.114144E+01 +PKER_SDRYG( 12, 15) = 0.105546E+01 +PKER_SDRYG( 12, 16) = 0.974419E+00 +PKER_SDRYG( 12, 17) = 0.897945E+00 +PKER_SDRYG( 12, 18) = 0.825675E+00 +PKER_SDRYG( 12, 19) = 0.757259E+00 +PKER_SDRYG( 12, 20) = 0.692357E+00 +PKER_SDRYG( 12, 21) = 0.630647E+00 +PKER_SDRYG( 12, 22) = 0.571852E+00 +PKER_SDRYG( 12, 23) = 0.515731E+00 +PKER_SDRYG( 12, 24) = 0.462161E+00 +PKER_SDRYG( 12, 25) = 0.411137E+00 +PKER_SDRYG( 12, 26) = 0.362843E+00 +PKER_SDRYG( 12, 27) = 0.317811E+00 +PKER_SDRYG( 12, 28) = 0.276701E+00 +PKER_SDRYG( 12, 29) = 0.240451E+00 +PKER_SDRYG( 12, 30) = 0.210140E+00 +PKER_SDRYG( 12, 31) = 0.186654E+00 +PKER_SDRYG( 12, 32) = 0.170411E+00 +PKER_SDRYG( 12, 33) = 0.161472E+00 +PKER_SDRYG( 12, 34) = 0.159162E+00 +PKER_SDRYG( 12, 35) = 0.162388E+00 +PKER_SDRYG( 12, 36) = 0.169994E+00 +PKER_SDRYG( 12, 37) = 0.180588E+00 +PKER_SDRYG( 12, 38) = 0.193112E+00 +PKER_SDRYG( 12, 39) = 0.206687E+00 +PKER_SDRYG( 12, 40) = 0.220641E+00 +PKER_SDRYG( 12, 41) = 0.234505E+00 +PKER_SDRYG( 12, 42) = 0.247994E+00 +PKER_SDRYG( 12, 43) = 0.260933E+00 +PKER_SDRYG( 12, 44) = 0.273225E+00 +PKER_SDRYG( 12, 45) = 0.284842E+00 +PKER_SDRYG( 12, 46) = 0.295768E+00 +PKER_SDRYG( 12, 47) = 0.305996E+00 +PKER_SDRYG( 12, 48) = 0.315542E+00 +PKER_SDRYG( 12, 49) = 0.324451E+00 +PKER_SDRYG( 12, 50) = 0.332775E+00 +PKER_SDRYG( 12, 51) = 0.340574E+00 +PKER_SDRYG( 12, 52) = 0.347888E+00 +PKER_SDRYG( 12, 53) = 0.354748E+00 +PKER_SDRYG( 12, 54) = 0.361176E+00 +PKER_SDRYG( 12, 55) = 0.367194E+00 +PKER_SDRYG( 12, 56) = 0.372824E+00 +PKER_SDRYG( 12, 57) = 0.378091E+00 +PKER_SDRYG( 12, 58) = 0.383022E+00 +PKER_SDRYG( 12, 59) = 0.387639E+00 +PKER_SDRYG( 12, 60) = 0.391966E+00 +PKER_SDRYG( 12, 61) = 0.396020E+00 +PKER_SDRYG( 12, 62) = 0.399822E+00 +PKER_SDRYG( 12, 63) = 0.403386E+00 +PKER_SDRYG( 12, 64) = 0.406730E+00 +PKER_SDRYG( 12, 65) = 0.409867E+00 +PKER_SDRYG( 12, 66) = 0.412810E+00 +PKER_SDRYG( 12, 67) = 0.415571E+00 +PKER_SDRYG( 12, 68) = 0.418163E+00 +PKER_SDRYG( 12, 69) = 0.420595E+00 +PKER_SDRYG( 12, 70) = 0.422878E+00 +PKER_SDRYG( 12, 71) = 0.425021E+00 +PKER_SDRYG( 12, 72) = 0.427033E+00 +PKER_SDRYG( 12, 73) = 0.428922E+00 +PKER_SDRYG( 12, 74) = 0.430695E+00 +PKER_SDRYG( 12, 75) = 0.432359E+00 +PKER_SDRYG( 12, 76) = 0.433922E+00 +PKER_SDRYG( 12, 77) = 0.435389E+00 +PKER_SDRYG( 12, 78) = 0.436767E+00 +PKER_SDRYG( 12, 79) = 0.438060E+00 +PKER_SDRYG( 12, 80) = 0.439274E+00 +PKER_SDRYG( 13, 1) = 0.294461E+01 +PKER_SDRYG( 13, 2) = 0.275204E+01 +PKER_SDRYG( 13, 3) = 0.257121E+01 +PKER_SDRYG( 13, 4) = 0.240139E+01 +PKER_SDRYG( 13, 5) = 0.224191E+01 +PKER_SDRYG( 13, 6) = 0.209213E+01 +PKER_SDRYG( 13, 7) = 0.195146E+01 +PKER_SDRYG( 13, 8) = 0.181933E+01 +PKER_SDRYG( 13, 9) = 0.169521E+01 +PKER_SDRYG( 13, 10) = 0.157859E+01 +PKER_SDRYG( 13, 11) = 0.146902E+01 +PKER_SDRYG( 13, 12) = 0.136604E+01 +PKER_SDRYG( 13, 13) = 0.126922E+01 +PKER_SDRYG( 13, 14) = 0.117816E+01 +PKER_SDRYG( 13, 15) = 0.109248E+01 +PKER_SDRYG( 13, 16) = 0.101180E+01 +PKER_SDRYG( 13, 17) = 0.935773E+00 +PKER_SDRYG( 13, 18) = 0.864045E+00 +PKER_SDRYG( 13, 19) = 0.796277E+00 +PKER_SDRYG( 13, 20) = 0.732136E+00 +PKER_SDRYG( 13, 21) = 0.671293E+00 +PKER_SDRYG( 13, 22) = 0.613429E+00 +PKER_SDRYG( 13, 23) = 0.558244E+00 +PKER_SDRYG( 13, 24) = 0.505468E+00 +PKER_SDRYG( 13, 25) = 0.454895E+00 +PKER_SDRYG( 13, 26) = 0.406428E+00 +PKER_SDRYG( 13, 27) = 0.360131E+00 +PKER_SDRYG( 13, 28) = 0.316299E+00 +PKER_SDRYG( 13, 29) = 0.275456E+00 +PKER_SDRYG( 13, 30) = 0.238374E+00 +PKER_SDRYG( 13, 31) = 0.206109E+00 +PKER_SDRYG( 13, 32) = 0.179451E+00 +PKER_SDRYG( 13, 33) = 0.159190E+00 +PKER_SDRYG( 13, 34) = 0.145545E+00 +PKER_SDRYG( 13, 35) = 0.138171E+00 +PKER_SDRYG( 13, 36) = 0.136403E+00 +PKER_SDRYG( 13, 37) = 0.139198E+00 +PKER_SDRYG( 13, 38) = 0.145447E+00 +PKER_SDRYG( 13, 39) = 0.154142E+00 +PKER_SDRYG( 13, 40) = 0.164364E+00 +PKER_SDRYG( 13, 41) = 0.175488E+00 +PKER_SDRYG( 13, 42) = 0.186961E+00 +PKER_SDRYG( 13, 43) = 0.198418E+00 +PKER_SDRYG( 13, 44) = 0.209659E+00 +PKER_SDRYG( 13, 45) = 0.220512E+00 +PKER_SDRYG( 13, 46) = 0.230875E+00 +PKER_SDRYG( 13, 47) = 0.240723E+00 +PKER_SDRYG( 13, 48) = 0.250043E+00 +PKER_SDRYG( 13, 49) = 0.258814E+00 +PKER_SDRYG( 13, 50) = 0.267045E+00 +PKER_SDRYG( 13, 51) = 0.274749E+00 +PKER_SDRYG( 13, 52) = 0.281964E+00 +PKER_SDRYG( 13, 53) = 0.288735E+00 +PKER_SDRYG( 13, 54) = 0.295096E+00 +PKER_SDRYG( 13, 55) = 0.301076E+00 +PKER_SDRYG( 13, 56) = 0.306693E+00 +PKER_SDRYG( 13, 57) = 0.311961E+00 +PKER_SDRYG( 13, 58) = 0.316898E+00 +PKER_SDRYG( 13, 59) = 0.321521E+00 +PKER_SDRYG( 13, 60) = 0.325852E+00 +PKER_SDRYG( 13, 61) = 0.329911E+00 +PKER_SDRYG( 13, 62) = 0.333715E+00 +PKER_SDRYG( 13, 63) = 0.337282E+00 +PKER_SDRYG( 13, 64) = 0.340628E+00 +PKER_SDRYG( 13, 65) = 0.343766E+00 +PKER_SDRYG( 13, 66) = 0.346710E+00 +PKER_SDRYG( 13, 67) = 0.349472E+00 +PKER_SDRYG( 13, 68) = 0.352064E+00 +PKER_SDRYG( 13, 69) = 0.354497E+00 +PKER_SDRYG( 13, 70) = 0.356781E+00 +PKER_SDRYG( 13, 71) = 0.358924E+00 +PKER_SDRYG( 13, 72) = 0.360936E+00 +PKER_SDRYG( 13, 73) = 0.362825E+00 +PKER_SDRYG( 13, 74) = 0.364598E+00 +PKER_SDRYG( 13, 75) = 0.366263E+00 +PKER_SDRYG( 13, 76) = 0.367826E+00 +PKER_SDRYG( 13, 77) = 0.369293E+00 +PKER_SDRYG( 13, 78) = 0.370671E+00 +PKER_SDRYG( 13, 79) = 0.371964E+00 +PKER_SDRYG( 13, 80) = 0.373178E+00 +PKER_SDRYG( 14, 1) = 0.297502E+01 +PKER_SDRYG( 14, 2) = 0.278247E+01 +PKER_SDRYG( 14, 3) = 0.260165E+01 +PKER_SDRYG( 14, 4) = 0.243185E+01 +PKER_SDRYG( 14, 5) = 0.227240E+01 +PKER_SDRYG( 14, 6) = 0.212265E+01 +PKER_SDRYG( 14, 7) = 0.198202E+01 +PKER_SDRYG( 14, 8) = 0.184993E+01 +PKER_SDRYG( 14, 9) = 0.172587E+01 +PKER_SDRYG( 14, 10) = 0.160933E+01 +PKER_SDRYG( 14, 11) = 0.149985E+01 +PKER_SDRYG( 14, 12) = 0.139698E+01 +PKER_SDRYG( 14, 13) = 0.130029E+01 +PKER_SDRYG( 14, 14) = 0.120941E+01 +PKER_SDRYG( 14, 15) = 0.112394E+01 +PKER_SDRYG( 14, 16) = 0.104352E+01 +PKER_SDRYG( 14, 17) = 0.967815E+00 +PKER_SDRYG( 14, 18) = 0.896486E+00 +PKER_SDRYG( 14, 19) = 0.829209E+00 +PKER_SDRYG( 14, 20) = 0.765666E+00 +PKER_SDRYG( 14, 21) = 0.705545E+00 +PKER_SDRYG( 14, 22) = 0.648535E+00 +PKER_SDRYG( 14, 23) = 0.594329E+00 +PKER_SDRYG( 14, 24) = 0.542628E+00 +PKER_SDRYG( 14, 25) = 0.493150E+00 +PKER_SDRYG( 14, 26) = 0.445651E+00 +PKER_SDRYG( 14, 27) = 0.399968E+00 +PKER_SDRYG( 14, 28) = 0.356041E+00 +PKER_SDRYG( 14, 29) = 0.314021E+00 +PKER_SDRYG( 14, 30) = 0.274267E+00 +PKER_SDRYG( 14, 31) = 0.237374E+00 +PKER_SDRYG( 14, 32) = 0.204260E+00 +PKER_SDRYG( 14, 33) = 0.175765E+00 +PKER_SDRYG( 14, 34) = 0.152637E+00 +PKER_SDRYG( 14, 35) = 0.135365E+00 +PKER_SDRYG( 14, 36) = 0.123949E+00 +PKER_SDRYG( 14, 37) = 0.117859E+00 +PKER_SDRYG( 14, 38) = 0.116422E+00 +PKER_SDRYG( 14, 39) = 0.118727E+00 +PKER_SDRYG( 14, 40) = 0.123806E+00 +PKER_SDRYG( 14, 41) = 0.130898E+00 +PKER_SDRYG( 14, 42) = 0.139254E+00 +PKER_SDRYG( 14, 43) = 0.148386E+00 +PKER_SDRYG( 14, 44) = 0.157857E+00 +PKER_SDRYG( 14, 45) = 0.167407E+00 +PKER_SDRYG( 14, 46) = 0.176814E+00 +PKER_SDRYG( 14, 47) = 0.185950E+00 +PKER_SDRYG( 14, 48) = 0.194744E+00 +PKER_SDRYG( 14, 49) = 0.203138E+00 +PKER_SDRYG( 14, 50) = 0.211120E+00 +PKER_SDRYG( 14, 51) = 0.218676E+00 +PKER_SDRYG( 14, 52) = 0.225795E+00 +PKER_SDRYG( 14, 53) = 0.232480E+00 +PKER_SDRYG( 14, 54) = 0.238754E+00 +PKER_SDRYG( 14, 55) = 0.244647E+00 +PKER_SDRYG( 14, 56) = 0.250193E+00 +PKER_SDRYG( 14, 57) = 0.255414E+00 +PKER_SDRYG( 14, 58) = 0.260327E+00 +PKER_SDRYG( 14, 59) = 0.264945E+00 +PKER_SDRYG( 14, 60) = 0.269277E+00 +PKER_SDRYG( 14, 61) = 0.273339E+00 +PKER_SDRYG( 14, 62) = 0.277147E+00 +PKER_SDRYG( 14, 63) = 0.280716E+00 +PKER_SDRYG( 14, 64) = 0.284064E+00 +PKER_SDRYG( 14, 65) = 0.287203E+00 +PKER_SDRYG( 14, 66) = 0.290149E+00 +PKER_SDRYG( 14, 67) = 0.292912E+00 +PKER_SDRYG( 14, 68) = 0.295505E+00 +PKER_SDRYG( 14, 69) = 0.297939E+00 +PKER_SDRYG( 14, 70) = 0.300223E+00 +PKER_SDRYG( 14, 71) = 0.302366E+00 +PKER_SDRYG( 14, 72) = 0.304379E+00 +PKER_SDRYG( 14, 73) = 0.306268E+00 +PKER_SDRYG( 14, 74) = 0.308041E+00 +PKER_SDRYG( 14, 75) = 0.309706E+00 +PKER_SDRYG( 14, 76) = 0.311269E+00 +PKER_SDRYG( 14, 77) = 0.312736E+00 +PKER_SDRYG( 14, 78) = 0.314114E+00 +PKER_SDRYG( 14, 79) = 0.315407E+00 +PKER_SDRYG( 14, 80) = 0.316622E+00 +PKER_SDRYG( 15, 1) = 0.300103E+01 +PKER_SDRYG( 15, 2) = 0.280849E+01 +PKER_SDRYG( 15, 3) = 0.262769E+01 +PKER_SDRYG( 15, 4) = 0.245790E+01 +PKER_SDRYG( 15, 5) = 0.229847E+01 +PKER_SDRYG( 15, 6) = 0.214875E+01 +PKER_SDRYG( 15, 7) = 0.200814E+01 +PKER_SDRYG( 15, 8) = 0.187609E+01 +PKER_SDRYG( 15, 9) = 0.175207E+01 +PKER_SDRYG( 15, 10) = 0.163559E+01 +PKER_SDRYG( 15, 11) = 0.152617E+01 +PKER_SDRYG( 15, 12) = 0.142337E+01 +PKER_SDRYG( 15, 13) = 0.132679E+01 +PKER_SDRYG( 15, 14) = 0.123602E+01 +PKER_SDRYG( 15, 15) = 0.115070E+01 +PKER_SDRYG( 15, 16) = 0.107047E+01 +PKER_SDRYG( 15, 17) = 0.994997E+00 +PKER_SDRYG( 15, 18) = 0.923952E+00 +PKER_SDRYG( 15, 19) = 0.857028E+00 +PKER_SDRYG( 15, 20) = 0.793920E+00 +PKER_SDRYG( 15, 21) = 0.734336E+00 +PKER_SDRYG( 15, 22) = 0.677982E+00 +PKER_SDRYG( 15, 23) = 0.624570E+00 +PKER_SDRYG( 15, 24) = 0.573810E+00 +PKER_SDRYG( 15, 25) = 0.525415E+00 +PKER_SDRYG( 15, 26) = 0.479106E+00 +PKER_SDRYG( 15, 27) = 0.434625E+00 +PKER_SDRYG( 15, 28) = 0.391766E+00 +PKER_SDRYG( 15, 29) = 0.350403E+00 +PKER_SDRYG( 15, 30) = 0.310560E+00 +PKER_SDRYG( 15, 31) = 0.272465E+00 +PKER_SDRYG( 15, 32) = 0.236568E+00 +PKER_SDRYG( 15, 33) = 0.203576E+00 +PKER_SDRYG( 15, 34) = 0.174281E+00 +PKER_SDRYG( 15, 35) = 0.149398E+00 +PKER_SDRYG( 15, 36) = 0.129630E+00 +PKER_SDRYG( 15, 37) = 0.114988E+00 +PKER_SDRYG( 15, 38) = 0.105420E+00 +PKER_SDRYG( 15, 39) = 0.100387E+00 +PKER_SDRYG( 15, 40) = 0.991260E-01 +PKER_SDRYG( 15, 41) = 0.100927E+00 +PKER_SDRYG( 15, 42) = 0.105008E+00 +PKER_SDRYG( 15, 43) = 0.110722E+00 +PKER_SDRYG( 15, 44) = 0.117557E+00 +PKER_SDRYG( 15, 45) = 0.125044E+00 +PKER_SDRYG( 15, 46) = 0.132897E+00 +PKER_SDRYG( 15, 47) = 0.140870E+00 +PKER_SDRYG( 15, 48) = 0.148774E+00 +PKER_SDRYG( 15, 49) = 0.156516E+00 +PKER_SDRYG( 15, 50) = 0.164008E+00 +PKER_SDRYG( 15, 51) = 0.171192E+00 +PKER_SDRYG( 15, 52) = 0.178051E+00 +PKER_SDRYG( 15, 53) = 0.184577E+00 +PKER_SDRYG( 15, 54) = 0.190747E+00 +PKER_SDRYG( 15, 55) = 0.196565E+00 +PKER_SDRYG( 15, 56) = 0.202034E+00 +PKER_SDRYG( 15, 57) = 0.207177E+00 +PKER_SDRYG( 15, 58) = 0.212021E+00 +PKER_SDRYG( 15, 59) = 0.216585E+00 +PKER_SDRYG( 15, 60) = 0.220887E+00 +PKER_SDRYG( 15, 61) = 0.224936E+00 +PKER_SDRYG( 15, 62) = 0.228741E+00 +PKER_SDRYG( 15, 63) = 0.232312E+00 +PKER_SDRYG( 15, 64) = 0.235662E+00 +PKER_SDRYG( 15, 65) = 0.238803E+00 +PKER_SDRYG( 15, 66) = 0.241750E+00 +PKER_SDRYG( 15, 67) = 0.244514E+00 +PKER_SDRYG( 15, 68) = 0.247108E+00 +PKER_SDRYG( 15, 69) = 0.249543E+00 +PKER_SDRYG( 15, 70) = 0.251827E+00 +PKER_SDRYG( 15, 71) = 0.253971E+00 +PKER_SDRYG( 15, 72) = 0.255984E+00 +PKER_SDRYG( 15, 73) = 0.257873E+00 +PKER_SDRYG( 15, 74) = 0.259647E+00 +PKER_SDRYG( 15, 75) = 0.261312E+00 +PKER_SDRYG( 15, 76) = 0.262875E+00 +PKER_SDRYG( 15, 77) = 0.264342E+00 +PKER_SDRYG( 15, 78) = 0.265720E+00 +PKER_SDRYG( 15, 79) = 0.267013E+00 +PKER_SDRYG( 15, 80) = 0.268228E+00 +PKER_SDRYG( 16, 1) = 0.302329E+01 +PKER_SDRYG( 16, 2) = 0.283075E+01 +PKER_SDRYG( 16, 3) = 0.264996E+01 +PKER_SDRYG( 16, 4) = 0.248019E+01 +PKER_SDRYG( 16, 5) = 0.232076E+01 +PKER_SDRYG( 16, 6) = 0.217106E+01 +PKER_SDRYG( 16, 7) = 0.203047E+01 +PKER_SDRYG( 16, 8) = 0.189845E+01 +PKER_SDRYG( 16, 9) = 0.177446E+01 +PKER_SDRYG( 16, 10) = 0.165801E+01 +PKER_SDRYG( 16, 11) = 0.154864E+01 +PKER_SDRYG( 16, 12) = 0.144590E+01 +PKER_SDRYG( 16, 13) = 0.134939E+01 +PKER_SDRYG( 16, 14) = 0.125871E+01 +PKER_SDRYG( 16, 15) = 0.117350E+01 +PKER_SDRYG( 16, 16) = 0.109340E+01 +PKER_SDRYG( 16, 17) = 0.101809E+01 +PKER_SDRYG( 16, 18) = 0.947248E+00 +PKER_SDRYG( 16, 19) = 0.880574E+00 +PKER_SDRYG( 16, 20) = 0.817777E+00 +PKER_SDRYG( 16, 21) = 0.758577E+00 +PKER_SDRYG( 16, 22) = 0.702699E+00 +PKER_SDRYG( 16, 23) = 0.649873E+00 +PKER_SDRYG( 16, 24) = 0.599828E+00 +PKER_SDRYG( 16, 25) = 0.552297E+00 +PKER_SDRYG( 16, 26) = 0.507010E+00 +PKER_SDRYG( 16, 27) = 0.463701E+00 +PKER_SDRYG( 16, 28) = 0.422113E+00 +PKER_SDRYG( 16, 29) = 0.382023E+00 +PKER_SDRYG( 16, 30) = 0.343269E+00 +PKER_SDRYG( 16, 31) = 0.305794E+00 +PKER_SDRYG( 16, 32) = 0.269715E+00 +PKER_SDRYG( 16, 33) = 0.235329E+00 +PKER_SDRYG( 16, 34) = 0.203179E+00 +PKER_SDRYG( 16, 35) = 0.173939E+00 +PKER_SDRYG( 16, 36) = 0.148290E+00 +PKER_SDRYG( 16, 37) = 0.126911E+00 +PKER_SDRYG( 16, 38) = 0.110074E+00 +PKER_SDRYG( 16, 39) = 0.977722E-01 +PKER_SDRYG( 16, 40) = 0.897236E-01 +PKER_SDRYG( 16, 41) = 0.854547E-01 +PKER_SDRYG( 16, 42) = 0.842616E-01 +PKER_SDRYG( 16, 43) = 0.855520E-01 +PKER_SDRYG( 16, 44) = 0.887781E-01 +PKER_SDRYG( 16, 45) = 0.933675E-01 +PKER_SDRYG( 16, 46) = 0.989218E-01 +PKER_SDRYG( 16, 47) = 0.105082E+00 +PKER_SDRYG( 16, 48) = 0.111617E+00 +PKER_SDRYG( 16, 49) = 0.118278E+00 +PKER_SDRYG( 16, 50) = 0.124959E+00 +PKER_SDRYG( 16, 51) = 0.131533E+00 +PKER_SDRYG( 16, 52) = 0.137923E+00 +PKER_SDRYG( 16, 53) = 0.144095E+00 +PKER_SDRYG( 16, 54) = 0.150006E+00 +PKER_SDRYG( 16, 55) = 0.155648E+00 +PKER_SDRYG( 16, 56) = 0.161010E+00 +PKER_SDRYG( 16, 57) = 0.166080E+00 +PKER_SDRYG( 16, 58) = 0.170856E+00 +PKER_SDRYG( 16, 59) = 0.175353E+00 +PKER_SDRYG( 16, 60) = 0.179587E+00 +PKER_SDRYG( 16, 61) = 0.183582E+00 +PKER_SDRYG( 16, 62) = 0.187351E+00 +PKER_SDRYG( 16, 63) = 0.190904E+00 +PKER_SDRYG( 16, 64) = 0.194247E+00 +PKER_SDRYG( 16, 65) = 0.197388E+00 +PKER_SDRYG( 16, 66) = 0.200335E+00 +PKER_SDRYG( 16, 67) = 0.203101E+00 +PKER_SDRYG( 16, 68) = 0.205696E+00 +PKER_SDRYG( 16, 69) = 0.208131E+00 +PKER_SDRYG( 16, 70) = 0.210416E+00 +PKER_SDRYG( 16, 71) = 0.212560E+00 +PKER_SDRYG( 16, 72) = 0.214573E+00 +PKER_SDRYG( 16, 73) = 0.216463E+00 +PKER_SDRYG( 16, 74) = 0.218237E+00 +PKER_SDRYG( 16, 75) = 0.219902E+00 +PKER_SDRYG( 16, 76) = 0.221465E+00 +PKER_SDRYG( 16, 77) = 0.222933E+00 +PKER_SDRYG( 16, 78) = 0.224310E+00 +PKER_SDRYG( 16, 79) = 0.225604E+00 +PKER_SDRYG( 16, 80) = 0.226819E+00 +PKER_SDRYG( 17, 1) = 0.304233E+01 +PKER_SDRYG( 17, 2) = 0.284980E+01 +PKER_SDRYG( 17, 3) = 0.266901E+01 +PKER_SDRYG( 17, 4) = 0.249924E+01 +PKER_SDRYG( 17, 5) = 0.233983E+01 +PKER_SDRYG( 17, 6) = 0.219014E+01 +PKER_SDRYG( 17, 7) = 0.204957E+01 +PKER_SDRYG( 17, 8) = 0.191757E+01 +PKER_SDRYG( 17, 9) = 0.179360E+01 +PKER_SDRYG( 17, 10) = 0.167718E+01 +PKER_SDRYG( 17, 11) = 0.156784E+01 +PKER_SDRYG( 17, 12) = 0.146515E+01 +PKER_SDRYG( 17, 13) = 0.136868E+01 +PKER_SDRYG( 17, 14) = 0.127807E+01 +PKER_SDRYG( 17, 15) = 0.119293E+01 +PKER_SDRYG( 17, 16) = 0.111293E+01 +PKER_SDRYG( 17, 17) = 0.103773E+01 +PKER_SDRYG( 17, 18) = 0.967037E+00 +PKER_SDRYG( 17, 19) = 0.900542E+00 +PKER_SDRYG( 17, 20) = 0.837966E+00 +PKER_SDRYG( 17, 21) = 0.779040E+00 +PKER_SDRYG( 17, 22) = 0.723501E+00 +PKER_SDRYG( 17, 23) = 0.671093E+00 +PKER_SDRYG( 17, 24) = 0.621566E+00 +PKER_SDRYG( 17, 25) = 0.574672E+00 +PKER_SDRYG( 17, 26) = 0.530159E+00 +PKER_SDRYG( 17, 27) = 0.487780E+00 +PKER_SDRYG( 17, 28) = 0.447283E+00 +PKER_SDRYG( 17, 29) = 0.408426E+00 +PKER_SDRYG( 17, 30) = 0.370984E+00 +PKER_SDRYG( 17, 31) = 0.334777E+00 +PKER_SDRYG( 17, 32) = 0.299703E+00 +PKER_SDRYG( 17, 33) = 0.265795E+00 +PKER_SDRYG( 17, 34) = 0.233237E+00 +PKER_SDRYG( 17, 35) = 0.202426E+00 +PKER_SDRYG( 17, 36) = 0.173914E+00 +PKER_SDRYG( 17, 37) = 0.148301E+00 +PKER_SDRYG( 17, 38) = 0.126202E+00 +PKER_SDRYG( 17, 39) = 0.107984E+00 +PKER_SDRYG( 17, 40) = 0.936873E-01 +PKER_SDRYG( 17, 41) = 0.833770E-01 +PKER_SDRYG( 17, 42) = 0.765063E-01 +PKER_SDRYG( 17, 43) = 0.727630E-01 +PKER_SDRYG( 17, 44) = 0.715986E-01 +PKER_SDRYG( 17, 45) = 0.724633E-01 +PKER_SDRYG( 17, 46) = 0.749323E-01 +PKER_SDRYG( 17, 47) = 0.785778E-01 +PKER_SDRYG( 17, 48) = 0.830719E-01 +PKER_SDRYG( 17, 49) = 0.881403E-01 +PKER_SDRYG( 17, 50) = 0.935486E-01 +PKER_SDRYG( 17, 51) = 0.991378E-01 +PKER_SDRYG( 17, 52) = 0.104781E+00 +PKER_SDRYG( 17, 53) = 0.110369E+00 +PKER_SDRYG( 17, 54) = 0.115842E+00 +PKER_SDRYG( 17, 55) = 0.121148E+00 +PKER_SDRYG( 17, 56) = 0.126252E+00 +PKER_SDRYG( 17, 57) = 0.131138E+00 +PKER_SDRYG( 17, 58) = 0.135801E+00 +PKER_SDRYG( 17, 59) = 0.140221E+00 +PKER_SDRYG( 17, 60) = 0.144398E+00 +PKER_SDRYG( 17, 61) = 0.148334E+00 +PKER_SDRYG( 17, 62) = 0.152044E+00 +PKER_SDRYG( 17, 63) = 0.155543E+00 +PKER_SDRYG( 17, 64) = 0.158847E+00 +PKER_SDRYG( 17, 65) = 0.161964E+00 +PKER_SDRYG( 17, 66) = 0.164902E+00 +PKER_SDRYG( 17, 67) = 0.167664E+00 +PKER_SDRYG( 17, 68) = 0.170259E+00 +PKER_SDRYG( 17, 69) = 0.172695E+00 +PKER_SDRYG( 17, 70) = 0.174981E+00 +PKER_SDRYG( 17, 71) = 0.177126E+00 +PKER_SDRYG( 17, 72) = 0.179139E+00 +PKER_SDRYG( 17, 73) = 0.181029E+00 +PKER_SDRYG( 17, 74) = 0.182803E+00 +PKER_SDRYG( 17, 75) = 0.184468E+00 +PKER_SDRYG( 17, 76) = 0.186032E+00 +PKER_SDRYG( 17, 77) = 0.187499E+00 +PKER_SDRYG( 17, 78) = 0.188877E+00 +PKER_SDRYG( 17, 79) = 0.190171E+00 +PKER_SDRYG( 17, 80) = 0.191386E+00 +PKER_SDRYG( 18, 1) = 0.305861E+01 +PKER_SDRYG( 18, 2) = 0.286609E+01 +PKER_SDRYG( 18, 3) = 0.268530E+01 +PKER_SDRYG( 18, 4) = 0.251555E+01 +PKER_SDRYG( 18, 5) = 0.235614E+01 +PKER_SDRYG( 18, 6) = 0.220646E+01 +PKER_SDRYG( 18, 7) = 0.206590E+01 +PKER_SDRYG( 18, 8) = 0.193391E+01 +PKER_SDRYG( 18, 9) = 0.180996E+01 +PKER_SDRYG( 18, 10) = 0.169356E+01 +PKER_SDRYG( 18, 11) = 0.158425E+01 +PKER_SDRYG( 18, 12) = 0.148158E+01 +PKER_SDRYG( 18, 13) = 0.138516E+01 +PKER_SDRYG( 18, 14) = 0.129459E+01 +PKER_SDRYG( 18, 15) = 0.120951E+01 +PKER_SDRYG( 18, 16) = 0.112957E+01 +PKER_SDRYG( 18, 17) = 0.105446E+01 +PKER_SDRYG( 18, 18) = 0.983869E+00 +PKER_SDRYG( 18, 19) = 0.917502E+00 +PKER_SDRYG( 18, 20) = 0.855084E+00 +PKER_SDRYG( 18, 21) = 0.796353E+00 +PKER_SDRYG( 18, 22) = 0.741055E+00 +PKER_SDRYG( 18, 23) = 0.688947E+00 +PKER_SDRYG( 18, 24) = 0.639789E+00 +PKER_SDRYG( 18, 25) = 0.593351E+00 +PKER_SDRYG( 18, 26) = 0.549400E+00 +PKER_SDRYG( 18, 27) = 0.507707E+00 +PKER_SDRYG( 18, 28) = 0.468042E+00 +PKER_SDRYG( 18, 29) = 0.430173E+00 +PKER_SDRYG( 18, 30) = 0.393871E+00 +PKER_SDRYG( 18, 31) = 0.358924E+00 +PKER_SDRYG( 18, 32) = 0.325148E+00 +PKER_SDRYG( 18, 33) = 0.292420E+00 +PKER_SDRYG( 18, 34) = 0.260716E+00 +PKER_SDRYG( 18, 35) = 0.230147E+00 +PKER_SDRYG( 18, 36) = 0.200989E+00 +PKER_SDRYG( 18, 37) = 0.173670E+00 +PKER_SDRYG( 18, 38) = 0.148685E+00 +PKER_SDRYG( 18, 39) = 0.126560E+00 +PKER_SDRYG( 18, 40) = 0.107668E+00 +PKER_SDRYG( 18, 41) = 0.921800E-01 +PKER_SDRYG( 18, 42) = 0.801537E-01 +PKER_SDRYG( 18, 43) = 0.713567E-01 +PKER_SDRYG( 18, 44) = 0.654782E-01 +PKER_SDRYG( 18, 45) = 0.621068E-01 +PKER_SDRYG( 18, 46) = 0.608901E-01 +PKER_SDRYG( 18, 47) = 0.613554E-01 +PKER_SDRYG( 18, 48) = 0.631511E-01 +PKER_SDRYG( 18, 49) = 0.660247E-01 +PKER_SDRYG( 18, 50) = 0.696433E-01 +PKER_SDRYG( 18, 51) = 0.737836E-01 +PKER_SDRYG( 18, 52) = 0.782701E-01 +PKER_SDRYG( 18, 53) = 0.829722E-01 +PKER_SDRYG( 18, 54) = 0.877276E-01 +PKER_SDRYG( 18, 55) = 0.924938E-01 +PKER_SDRYG( 18, 56) = 0.971825E-01 +PKER_SDRYG( 18, 57) = 0.101744E+00 +PKER_SDRYG( 18, 58) = 0.106160E+00 +PKER_SDRYG( 18, 59) = 0.110397E+00 +PKER_SDRYG( 18, 60) = 0.114449E+00 +PKER_SDRYG( 18, 61) = 0.118307E+00 +PKER_SDRYG( 18, 62) = 0.121962E+00 +PKER_SDRYG( 18, 63) = 0.125411E+00 +PKER_SDRYG( 18, 64) = 0.128663E+00 +PKER_SDRYG( 18, 65) = 0.131730E+00 +PKER_SDRYG( 18, 66) = 0.134628E+00 +PKER_SDRYG( 18, 67) = 0.137364E+00 +PKER_SDRYG( 18, 68) = 0.139945E+00 +PKER_SDRYG( 18, 69) = 0.142375E+00 +PKER_SDRYG( 18, 70) = 0.144660E+00 +PKER_SDRYG( 18, 71) = 0.146805E+00 +PKER_SDRYG( 18, 72) = 0.148819E+00 +PKER_SDRYG( 18, 73) = 0.150709E+00 +PKER_SDRYG( 18, 74) = 0.152483E+00 +PKER_SDRYG( 18, 75) = 0.154149E+00 +PKER_SDRYG( 18, 76) = 0.155712E+00 +PKER_SDRYG( 18, 77) = 0.157180E+00 +PKER_SDRYG( 18, 78) = 0.158558E+00 +PKER_SDRYG( 18, 79) = 0.159852E+00 +PKER_SDRYG( 18, 80) = 0.161067E+00 +PKER_SDRYG( 19, 1) = 0.307255E+01 +PKER_SDRYG( 19, 2) = 0.288003E+01 +PKER_SDRYG( 19, 3) = 0.269925E+01 +PKER_SDRYG( 19, 4) = 0.252949E+01 +PKER_SDRYG( 19, 5) = 0.237010E+01 +PKER_SDRYG( 19, 6) = 0.222042E+01 +PKER_SDRYG( 19, 7) = 0.207987E+01 +PKER_SDRYG( 19, 8) = 0.194789E+01 +PKER_SDRYG( 19, 9) = 0.182395E+01 +PKER_SDRYG( 19, 10) = 0.170757E+01 +PKER_SDRYG( 19, 11) = 0.159827E+01 +PKER_SDRYG( 19, 12) = 0.149563E+01 +PKER_SDRYG( 19, 13) = 0.139923E+01 +PKER_SDRYG( 19, 14) = 0.130869E+01 +PKER_SDRYG( 19, 15) = 0.122365E+01 +PKER_SDRYG( 19, 16) = 0.114377E+01 +PKER_SDRYG( 19, 17) = 0.106872E+01 +PKER_SDRYG( 19, 18) = 0.998202E+00 +PKER_SDRYG( 19, 19) = 0.931926E+00 +PKER_SDRYG( 19, 20) = 0.869623E+00 +PKER_SDRYG( 19, 21) = 0.811031E+00 +PKER_SDRYG( 19, 22) = 0.755906E+00 +PKER_SDRYG( 19, 23) = 0.704011E+00 +PKER_SDRYG( 19, 24) = 0.655117E+00 +PKER_SDRYG( 19, 25) = 0.609004E+00 +PKER_SDRYG( 19, 26) = 0.565455E+00 +PKER_SDRYG( 19, 27) = 0.524258E+00 +PKER_SDRYG( 19, 28) = 0.485199E+00 +PKER_SDRYG( 19, 29) = 0.448065E+00 +PKER_SDRYG( 19, 30) = 0.412644E+00 +PKER_SDRYG( 19, 31) = 0.378726E+00 +PKER_SDRYG( 19, 32) = 0.346109E+00 +PKER_SDRYG( 19, 33) = 0.314617E+00 +PKER_SDRYG( 19, 34) = 0.284120E+00 +PKER_SDRYG( 19, 35) = 0.254566E+00 +PKER_SDRYG( 19, 36) = 0.226009E+00 +PKER_SDRYG( 19, 37) = 0.198643E+00 +PKER_SDRYG( 19, 38) = 0.172786E+00 +PKER_SDRYG( 19, 39) = 0.148830E+00 +PKER_SDRYG( 19, 40) = 0.127216E+00 +PKER_SDRYG( 19, 41) = 0.108286E+00 +PKER_SDRYG( 19, 42) = 0.922237E-01 +PKER_SDRYG( 19, 43) = 0.791616E-01 +PKER_SDRYG( 19, 44) = 0.689769E-01 +PKER_SDRYG( 19, 45) = 0.613748E-01 +PKER_SDRYG( 19, 46) = 0.562746E-01 +PKER_SDRYG( 19, 47) = 0.531554E-01 +PKER_SDRYG( 19, 48) = 0.518361E-01 +PKER_SDRYG( 19, 49) = 0.519775E-01 +PKER_SDRYG( 19, 50) = 0.532667E-01 +PKER_SDRYG( 19, 51) = 0.554628E-01 +PKER_SDRYG( 19, 52) = 0.583379E-01 +PKER_SDRYG( 19, 53) = 0.617174E-01 +PKER_SDRYG( 19, 54) = 0.654271E-01 +PKER_SDRYG( 19, 55) = 0.693467E-01 +PKER_SDRYG( 19, 56) = 0.733724E-01 +PKER_SDRYG( 19, 57) = 0.774227E-01 +PKER_SDRYG( 19, 58) = 0.814369E-01 +PKER_SDRYG( 19, 59) = 0.853677E-01 +PKER_SDRYG( 19, 60) = 0.891824E-01 +PKER_SDRYG( 19, 61) = 0.928586E-01 +PKER_SDRYG( 19, 62) = 0.963820E-01 +PKER_SDRYG( 19, 63) = 0.997497E-01 +PKER_SDRYG( 19, 64) = 0.102946E+00 +PKER_SDRYG( 19, 65) = 0.105969E+00 +PKER_SDRYG( 19, 66) = 0.108823E+00 +PKER_SDRYG( 19, 67) = 0.111515E+00 +PKER_SDRYG( 19, 68) = 0.114057E+00 +PKER_SDRYG( 19, 69) = 0.116458E+00 +PKER_SDRYG( 19, 70) = 0.118726E+00 +PKER_SDRYG( 19, 71) = 0.120863E+00 +PKER_SDRYG( 19, 72) = 0.122875E+00 +PKER_SDRYG( 19, 73) = 0.124765E+00 +PKER_SDRYG( 19, 74) = 0.126539E+00 +PKER_SDRYG( 19, 75) = 0.128205E+00 +PKER_SDRYG( 19, 76) = 0.129769E+00 +PKER_SDRYG( 19, 77) = 0.131237E+00 +PKER_SDRYG( 19, 78) = 0.132615E+00 +PKER_SDRYG( 19, 79) = 0.133909E+00 +PKER_SDRYG( 19, 80) = 0.135123E+00 +PKER_SDRYG( 20, 1) = 0.308447E+01 +PKER_SDRYG( 20, 2) = 0.289195E+01 +PKER_SDRYG( 20, 3) = 0.271117E+01 +PKER_SDRYG( 20, 4) = 0.254143E+01 +PKER_SDRYG( 20, 5) = 0.238203E+01 +PKER_SDRYG( 20, 6) = 0.223236E+01 +PKER_SDRYG( 20, 7) = 0.209182E+01 +PKER_SDRYG( 20, 8) = 0.195984E+01 +PKER_SDRYG( 20, 9) = 0.183591E+01 +PKER_SDRYG( 20, 10) = 0.171954E+01 +PKER_SDRYG( 20, 11) = 0.161026E+01 +PKER_SDRYG( 20, 12) = 0.150763E+01 +PKER_SDRYG( 20, 13) = 0.141126E+01 +PKER_SDRYG( 20, 14) = 0.132074E+01 +PKER_SDRYG( 20, 15) = 0.123573E+01 +PKER_SDRYG( 20, 16) = 0.115588E+01 +PKER_SDRYG( 20, 17) = 0.108088E+01 +PKER_SDRYG( 20, 18) = 0.101042E+01 +PKER_SDRYG( 20, 19) = 0.944207E+00 +PKER_SDRYG( 20, 20) = 0.881986E+00 +PKER_SDRYG( 20, 21) = 0.823495E+00 +PKER_SDRYG( 20, 22) = 0.768494E+00 +PKER_SDRYG( 20, 23) = 0.716752E+00 +PKER_SDRYG( 20, 24) = 0.668047E+00 +PKER_SDRYG( 20, 25) = 0.622167E+00 +PKER_SDRYG( 20, 26) = 0.578906E+00 +PKER_SDRYG( 20, 27) = 0.538063E+00 +PKER_SDRYG( 20, 28) = 0.499440E+00 +PKER_SDRYG( 20, 29) = 0.462841E+00 +PKER_SDRYG( 20, 30) = 0.428070E+00 +PKER_SDRYG( 20, 31) = 0.394930E+00 +PKER_SDRYG( 20, 32) = 0.363228E+00 +PKER_SDRYG( 20, 33) = 0.332779E+00 +PKER_SDRYG( 20, 34) = 0.303417E+00 +PKER_SDRYG( 20, 35) = 0.275014E+00 +PKER_SDRYG( 20, 36) = 0.247503E+00 +PKER_SDRYG( 20, 37) = 0.220909E+00 +PKER_SDRYG( 20, 38) = 0.195362E+00 +PKER_SDRYG( 20, 39) = 0.171100E+00 +PKER_SDRYG( 20, 40) = 0.148434E+00 +PKER_SDRYG( 20, 41) = 0.127703E+00 +PKER_SDRYG( 20, 42) = 0.109201E+00 +PKER_SDRYG( 20, 43) = 0.931127E-01 +PKER_SDRYG( 20, 44) = 0.795450E-01 +PKER_SDRYG( 20, 45) = 0.684619E-01 +PKER_SDRYG( 20, 46) = 0.597138E-01 +PKER_SDRYG( 20, 47) = 0.531640E-01 +PKER_SDRYG( 20, 48) = 0.485713E-01 +PKER_SDRYG( 20, 49) = 0.457023E-01 +PKER_SDRYG( 20, 50) = 0.442778E-01 +PKER_SDRYG( 20, 51) = 0.441239E-01 +PKER_SDRYG( 20, 52) = 0.449550E-01 +PKER_SDRYG( 20, 53) = 0.465614E-01 +PKER_SDRYG( 20, 54) = 0.488440E-01 +PKER_SDRYG( 20, 55) = 0.515730E-01 +PKER_SDRYG( 20, 56) = 0.546214E-01 +PKER_SDRYG( 20, 57) = 0.578936E-01 +PKER_SDRYG( 20, 58) = 0.612990E-01 +PKER_SDRYG( 20, 59) = 0.647325E-01 +PKER_SDRYG( 20, 60) = 0.681741E-01 +PKER_SDRYG( 20, 61) = 0.715569E-01 +PKER_SDRYG( 20, 62) = 0.748508E-01 +PKER_SDRYG( 20, 63) = 0.780435E-01 +PKER_SDRYG( 20, 64) = 0.811089E-01 +PKER_SDRYG( 20, 65) = 0.840439E-01 +PKER_SDRYG( 20, 66) = 0.868407E-01 +PKER_SDRYG( 20, 67) = 0.894925E-01 +PKER_SDRYG( 20, 68) = 0.919967E-01 +PKER_SDRYG( 20, 69) = 0.943597E-01 +PKER_SDRYG( 20, 70) = 0.965903E-01 +PKER_SDRYG( 20, 71) = 0.986983E-01 +PKER_SDRYG( 20, 72) = 0.100690E+00 +PKER_SDRYG( 20, 73) = 0.102570E+00 +PKER_SDRYG( 20, 74) = 0.104341E+00 +PKER_SDRYG( 20, 75) = 0.106005E+00 +PKER_SDRYG( 20, 76) = 0.107569E+00 +PKER_SDRYG( 20, 77) = 0.109037E+00 +PKER_SDRYG( 20, 78) = 0.110416E+00 +PKER_SDRYG( 20, 79) = 0.111710E+00 +PKER_SDRYG( 20, 80) = 0.112924E+00 +PKER_SDRYG( 21, 1) = 0.309467E+01 +PKER_SDRYG( 21, 2) = 0.290215E+01 +PKER_SDRYG( 21, 3) = 0.272138E+01 +PKER_SDRYG( 21, 4) = 0.255163E+01 +PKER_SDRYG( 21, 5) = 0.239224E+01 +PKER_SDRYG( 21, 6) = 0.224257E+01 +PKER_SDRYG( 21, 7) = 0.210203E+01 +PKER_SDRYG( 21, 8) = 0.197007E+01 +PKER_SDRYG( 21, 9) = 0.184615E+01 +PKER_SDRYG( 21, 10) = 0.172978E+01 +PKER_SDRYG( 21, 11) = 0.162051E+01 +PKER_SDRYG( 21, 12) = 0.151789E+01 +PKER_SDRYG( 21, 13) = 0.142153E+01 +PKER_SDRYG( 21, 14) = 0.133104E+01 +PKER_SDRYG( 21, 15) = 0.124605E+01 +PKER_SDRYG( 21, 16) = 0.116623E+01 +PKER_SDRYG( 21, 17) = 0.109126E+01 +PKER_SDRYG( 21, 18) = 0.102083E+01 +PKER_SDRYG( 21, 19) = 0.954672E+00 +PKER_SDRYG( 21, 20) = 0.892510E+00 +PKER_SDRYG( 21, 21) = 0.834093E+00 +PKER_SDRYG( 21, 22) = 0.779182E+00 +PKER_SDRYG( 21, 23) = 0.727550E+00 +PKER_SDRYG( 21, 24) = 0.678981E+00 +PKER_SDRYG( 21, 25) = 0.633268E+00 +PKER_SDRYG( 21, 26) = 0.590214E+00 +PKER_SDRYG( 21, 27) = 0.549625E+00 +PKER_SDRYG( 21, 28) = 0.511316E+00 +PKER_SDRYG( 21, 29) = 0.475102E+00 +PKER_SDRYG( 21, 30) = 0.440802E+00 +PKER_SDRYG( 21, 31) = 0.408235E+00 +PKER_SDRYG( 21, 32) = 0.377220E+00 +PKER_SDRYG( 21, 33) = 0.347581E+00 +PKER_SDRYG( 21, 34) = 0.319145E+00 +PKER_SDRYG( 21, 35) = 0.291760E+00 +PKER_SDRYG( 21, 36) = 0.265305E+00 +PKER_SDRYG( 21, 37) = 0.239708E+00 +PKER_SDRYG( 21, 38) = 0.214974E+00 +PKER_SDRYG( 21, 39) = 0.191196E+00 +PKER_SDRYG( 21, 40) = 0.168553E+00 +PKER_SDRYG( 21, 41) = 0.147284E+00 +PKER_SDRYG( 21, 42) = 0.127658E+00 +PKER_SDRYG( 21, 43) = 0.109904E+00 +PKER_SDRYG( 21, 44) = 0.941689E-01 +PKER_SDRYG( 21, 45) = 0.805651E-01 +PKER_SDRYG( 21, 46) = 0.690716E-01 +PKER_SDRYG( 21, 47) = 0.595900E-01 +PKER_SDRYG( 21, 48) = 0.520709E-01 +PKER_SDRYG( 21, 49) = 0.463366E-01 +PKER_SDRYG( 21, 50) = 0.421453E-01 +PKER_SDRYG( 21, 51) = 0.394599E-01 +PKER_SDRYG( 21, 52) = 0.379410E-01 +PKER_SDRYG( 21, 53) = 0.375222E-01 +PKER_SDRYG( 21, 54) = 0.379878E-01 +PKER_SDRYG( 21, 55) = 0.391684E-01 +PKER_SDRYG( 21, 56) = 0.409134E-01 +PKER_SDRYG( 21, 57) = 0.430879E-01 +PKER_SDRYG( 21, 58) = 0.455943E-01 +PKER_SDRYG( 21, 59) = 0.483097E-01 +PKER_SDRYG( 21, 60) = 0.511611E-01 +PKER_SDRYG( 21, 61) = 0.540832E-01 +PKER_SDRYG( 21, 62) = 0.570182E-01 +PKER_SDRYG( 21, 63) = 0.599262E-01 +PKER_SDRYG( 21, 64) = 0.627739E-01 +PKER_SDRYG( 21, 65) = 0.655385E-01 +PKER_SDRYG( 21, 66) = 0.682053E-01 +PKER_SDRYG( 21, 67) = 0.707625E-01 +PKER_SDRYG( 21, 68) = 0.732087E-01 +PKER_SDRYG( 21, 69) = 0.755315E-01 +PKER_SDRYG( 21, 70) = 0.777294E-01 +PKER_SDRYG( 21, 71) = 0.798052E-01 +PKER_SDRYG( 21, 72) = 0.817651E-01 +PKER_SDRYG( 21, 73) = 0.836157E-01 +PKER_SDRYG( 21, 74) = 0.853654E-01 +PKER_SDRYG( 21, 75) = 0.870178E-01 +PKER_SDRYG( 21, 76) = 0.885760E-01 +PKER_SDRYG( 21, 77) = 0.900423E-01 +PKER_SDRYG( 21, 78) = 0.914203E-01 +PKER_SDRYG( 21, 79) = 0.927143E-01 +PKER_SDRYG( 21, 80) = 0.939293E-01 +PKER_SDRYG( 22, 1) = 0.310340E+01 +PKER_SDRYG( 22, 2) = 0.291088E+01 +PKER_SDRYG( 22, 3) = 0.273011E+01 +PKER_SDRYG( 22, 4) = 0.256036E+01 +PKER_SDRYG( 22, 5) = 0.240098E+01 +PKER_SDRYG( 22, 6) = 0.225131E+01 +PKER_SDRYG( 22, 7) = 0.211078E+01 +PKER_SDRYG( 22, 8) = 0.197881E+01 +PKER_SDRYG( 22, 9) = 0.185490E+01 +PKER_SDRYG( 22, 10) = 0.173854E+01 +PKER_SDRYG( 22, 11) = 0.162927E+01 +PKER_SDRYG( 22, 12) = 0.152667E+01 +PKER_SDRYG( 22, 13) = 0.143032E+01 +PKER_SDRYG( 22, 14) = 0.133984E+01 +PKER_SDRYG( 22, 15) = 0.125486E+01 +PKER_SDRYG( 22, 16) = 0.117506E+01 +PKER_SDRYG( 22, 17) = 0.110011E+01 +PKER_SDRYG( 22, 18) = 0.102972E+01 +PKER_SDRYG( 22, 19) = 0.963596E+00 +PKER_SDRYG( 22, 20) = 0.901477E+00 +PKER_SDRYG( 22, 21) = 0.843114E+00 +PKER_SDRYG( 22, 22) = 0.788268E+00 +PKER_SDRYG( 22, 23) = 0.736716E+00 +PKER_SDRYG( 22, 24) = 0.688246E+00 +PKER_SDRYG( 22, 25) = 0.642654E+00 +PKER_SDRYG( 22, 26) = 0.599749E+00 +PKER_SDRYG( 22, 27) = 0.559343E+00 +PKER_SDRYG( 22, 28) = 0.521260E+00 +PKER_SDRYG( 22, 29) = 0.485324E+00 +PKER_SDRYG( 22, 30) = 0.451364E+00 +PKER_SDRYG( 22, 31) = 0.419213E+00 +PKER_SDRYG( 22, 32) = 0.388704E+00 +PKER_SDRYG( 22, 33) = 0.359670E+00 +PKER_SDRYG( 22, 34) = 0.331948E+00 +PKER_SDRYG( 22, 35) = 0.305382E+00 +PKER_SDRYG( 22, 36) = 0.279831E+00 +PKER_SDRYG( 22, 37) = 0.255180E+00 +PKER_SDRYG( 22, 38) = 0.231361E+00 +PKER_SDRYG( 22, 39) = 0.208367E+00 +PKER_SDRYG( 22, 40) = 0.186266E+00 +PKER_SDRYG( 22, 41) = 0.165198E+00 +PKER_SDRYG( 22, 42) = 0.145353E+00 +PKER_SDRYG( 22, 43) = 0.126934E+00 +PKER_SDRYG( 22, 44) = 0.110117E+00 +PKER_SDRYG( 22, 45) = 0.950242E-01 +PKER_SDRYG( 22, 46) = 0.817187E-01 +PKER_SDRYG( 22, 47) = 0.701989E-01 +PKER_SDRYG( 22, 48) = 0.604077E-01 +PKER_SDRYG( 22, 49) = 0.522862E-01 +PKER_SDRYG( 22, 50) = 0.457355E-01 +PKER_SDRYG( 22, 51) = 0.406096E-01 +PKER_SDRYG( 22, 52) = 0.368134E-01 +PKER_SDRYG( 22, 53) = 0.342156E-01 +PKER_SDRYG( 22, 54) = 0.326793E-01 +PKER_SDRYG( 22, 55) = 0.320323E-01 +PKER_SDRYG( 22, 56) = 0.321937E-01 +PKER_SDRYG( 22, 57) = 0.329850E-01 +PKER_SDRYG( 22, 58) = 0.342698E-01 +PKER_SDRYG( 22, 59) = 0.360064E-01 +PKER_SDRYG( 22, 60) = 0.380365E-01 +PKER_SDRYG( 22, 61) = 0.402760E-01 +PKER_SDRYG( 22, 62) = 0.426662E-01 +PKER_SDRYG( 22, 63) = 0.451444E-01 +PKER_SDRYG( 22, 64) = 0.476417E-01 +PKER_SDRYG( 22, 65) = 0.501412E-01 +PKER_SDRYG( 22, 66) = 0.525978E-01 +PKER_SDRYG( 22, 67) = 0.549924E-01 +PKER_SDRYG( 22, 68) = 0.573119E-01 +PKER_SDRYG( 22, 69) = 0.595407E-01 +PKER_SDRYG( 22, 70) = 0.616759E-01 +PKER_SDRYG( 22, 71) = 0.637106E-01 +PKER_SDRYG( 22, 72) = 0.656407E-01 +PKER_SDRYG( 22, 73) = 0.674641E-01 +PKER_SDRYG( 22, 74) = 0.691851E-01 +PKER_SDRYG( 22, 75) = 0.708107E-01 +PKER_SDRYG( 22, 76) = 0.723473E-01 +PKER_SDRYG( 22, 77) = 0.737996E-01 +PKER_SDRYG( 22, 78) = 0.751703E-01 +PKER_SDRYG( 22, 79) = 0.764615E-01 +PKER_SDRYG( 22, 80) = 0.776757E-01 +PKER_SDRYG( 23, 1) = 0.311087E+01 +PKER_SDRYG( 23, 2) = 0.291835E+01 +PKER_SDRYG( 23, 3) = 0.273758E+01 +PKER_SDRYG( 23, 4) = 0.256784E+01 +PKER_SDRYG( 23, 5) = 0.240845E+01 +PKER_SDRYG( 23, 6) = 0.225879E+01 +PKER_SDRYG( 23, 7) = 0.211825E+01 +PKER_SDRYG( 23, 8) = 0.198629E+01 +PKER_SDRYG( 23, 9) = 0.186238E+01 +PKER_SDRYG( 23, 10) = 0.174603E+01 +PKER_SDRYG( 23, 11) = 0.163677E+01 +PKER_SDRYG( 23, 12) = 0.153417E+01 +PKER_SDRYG( 23, 13) = 0.143783E+01 +PKER_SDRYG( 23, 14) = 0.134736E+01 +PKER_SDRYG( 23, 15) = 0.126240E+01 +PKER_SDRYG( 23, 16) = 0.118261E+01 +PKER_SDRYG( 23, 17) = 0.110768E+01 +PKER_SDRYG( 23, 18) = 0.103731E+01 +PKER_SDRYG( 23, 19) = 0.971209E+00 +PKER_SDRYG( 23, 20) = 0.909123E+00 +PKER_SDRYG( 23, 21) = 0.850799E+00 +PKER_SDRYG( 23, 22) = 0.796001E+00 +PKER_SDRYG( 23, 23) = 0.744508E+00 +PKER_SDRYG( 23, 24) = 0.696109E+00 +PKER_SDRYG( 23, 25) = 0.650606E+00 +PKER_SDRYG( 23, 26) = 0.607808E+00 +PKER_SDRYG( 23, 27) = 0.567535E+00 +PKER_SDRYG( 23, 28) = 0.529615E+00 +PKER_SDRYG( 23, 29) = 0.493879E+00 +PKER_SDRYG( 23, 30) = 0.460166E+00 +PKER_SDRYG( 23, 31) = 0.428317E+00 +PKER_SDRYG( 23, 32) = 0.398176E+00 +PKER_SDRYG( 23, 33) = 0.369589E+00 +PKER_SDRYG( 23, 34) = 0.342402E+00 +PKER_SDRYG( 23, 35) = 0.316466E+00 +PKER_SDRYG( 23, 36) = 0.291637E+00 +PKER_SDRYG( 23, 37) = 0.267784E+00 +PKER_SDRYG( 23, 38) = 0.244803E+00 +PKER_SDRYG( 23, 39) = 0.222628E+00 +PKER_SDRYG( 23, 40) = 0.201247E+00 +PKER_SDRYG( 23, 41) = 0.180713E+00 +PKER_SDRYG( 23, 42) = 0.161137E+00 +PKER_SDRYG( 23, 43) = 0.142671E+00 +PKER_SDRYG( 23, 44) = 0.125476E+00 +PKER_SDRYG( 23, 45) = 0.109687E+00 +PKER_SDRYG( 23, 46) = 0.953871E-01 +PKER_SDRYG( 23, 47) = 0.826169E-01 +PKER_SDRYG( 23, 48) = 0.713617E-01 +PKER_SDRYG( 23, 49) = 0.615668E-01 +PKER_SDRYG( 23, 50) = 0.531991E-01 +PKER_SDRYG( 23, 51) = 0.461730E-01 +PKER_SDRYG( 23, 52) = 0.403882E-01 +PKER_SDRYG( 23, 53) = 0.358096E-01 +PKER_SDRYG( 23, 54) = 0.323398E-01 +PKER_SDRYG( 23, 55) = 0.298278E-01 +PKER_SDRYG( 23, 56) = 0.282645E-01 +PKER_SDRYG( 23, 57) = 0.274478E-01 +PKER_SDRYG( 23, 58) = 0.273472E-01 +PKER_SDRYG( 23, 59) = 0.278235E-01 +PKER_SDRYG( 23, 60) = 0.287808E-01 +PKER_SDRYG( 23, 61) = 0.301115E-01 +PKER_SDRYG( 23, 62) = 0.317312E-01 +PKER_SDRYG( 23, 63) = 0.335818E-01 +PKER_SDRYG( 23, 64) = 0.355711E-01 +PKER_SDRYG( 23, 65) = 0.376525E-01 +PKER_SDRYG( 23, 66) = 0.397832E-01 +PKER_SDRYG( 23, 67) = 0.419209E-01 +PKER_SDRYG( 23, 68) = 0.440372E-01 +PKER_SDRYG( 23, 69) = 0.461097E-01 +PKER_SDRYG( 23, 70) = 0.481216E-01 +PKER_SDRYG( 23, 71) = 0.500634E-01 +PKER_SDRYG( 23, 72) = 0.519255E-01 +PKER_SDRYG( 23, 73) = 0.537073E-01 +PKER_SDRYG( 23, 74) = 0.553996E-01 +PKER_SDRYG( 23, 75) = 0.570010E-01 +PKER_SDRYG( 23, 76) = 0.585138E-01 +PKER_SDRYG( 23, 77) = 0.599425E-01 +PKER_SDRYG( 23, 78) = 0.612921E-01 +PKER_SDRYG( 23, 79) = 0.625682E-01 +PKER_SDRYG( 23, 80) = 0.637735E-01 +PKER_SDRYG( 24, 1) = 0.311725E+01 +PKER_SDRYG( 24, 2) = 0.292474E+01 +PKER_SDRYG( 24, 3) = 0.274397E+01 +PKER_SDRYG( 24, 4) = 0.257423E+01 +PKER_SDRYG( 24, 5) = 0.241484E+01 +PKER_SDRYG( 24, 6) = 0.226518E+01 +PKER_SDRYG( 24, 7) = 0.212465E+01 +PKER_SDRYG( 24, 8) = 0.199269E+01 +PKER_SDRYG( 24, 9) = 0.186878E+01 +PKER_SDRYG( 24, 10) = 0.175243E+01 +PKER_SDRYG( 24, 11) = 0.164318E+01 +PKER_SDRYG( 24, 12) = 0.154059E+01 +PKER_SDRYG( 24, 13) = 0.144425E+01 +PKER_SDRYG( 24, 14) = 0.135379E+01 +PKER_SDRYG( 24, 15) = 0.126883E+01 +PKER_SDRYG( 24, 16) = 0.118906E+01 +PKER_SDRYG( 24, 17) = 0.111414E+01 +PKER_SDRYG( 24, 18) = 0.104379E+01 +PKER_SDRYG( 24, 19) = 0.977708E+00 +PKER_SDRYG( 24, 20) = 0.915646E+00 +PKER_SDRYG( 24, 21) = 0.857350E+00 +PKER_SDRYG( 24, 22) = 0.802588E+00 +PKER_SDRYG( 24, 23) = 0.751138E+00 +PKER_SDRYG( 24, 24) = 0.702792E+00 +PKER_SDRYG( 24, 25) = 0.657353E+00 +PKER_SDRYG( 24, 26) = 0.614634E+00 +PKER_SDRYG( 24, 27) = 0.574458E+00 +PKER_SDRYG( 24, 28) = 0.536656E+00 +PKER_SDRYG( 24, 29) = 0.501065E+00 +PKER_SDRYG( 24, 30) = 0.467530E+00 +PKER_SDRYG( 24, 31) = 0.435900E+00 +PKER_SDRYG( 24, 32) = 0.406028E+00 +PKER_SDRYG( 24, 33) = 0.377767E+00 +PKER_SDRYG( 24, 34) = 0.350976E+00 +PKER_SDRYG( 24, 35) = 0.325513E+00 +PKER_SDRYG( 24, 36) = 0.301240E+00 +PKER_SDRYG( 24, 37) = 0.278025E+00 +PKER_SDRYG( 24, 38) = 0.255748E+00 +PKER_SDRYG( 24, 39) = 0.234312E+00 +PKER_SDRYG( 24, 40) = 0.213656E+00 +PKER_SDRYG( 24, 41) = 0.193765E+00 +PKER_SDRYG( 24, 42) = 0.174681E+00 +PKER_SDRYG( 24, 43) = 0.156497E+00 +PKER_SDRYG( 24, 44) = 0.139338E+00 +PKER_SDRYG( 24, 45) = 0.123333E+00 +PKER_SDRYG( 24, 46) = 0.108586E+00 +PKER_SDRYG( 24, 47) = 0.951564E-01 +PKER_SDRYG( 24, 48) = 0.830549E-01 +PKER_SDRYG( 24, 49) = 0.722530E-01 +PKER_SDRYG( 24, 50) = 0.627027E-01 +PKER_SDRYG( 24, 51) = 0.543516E-01 +PKER_SDRYG( 24, 52) = 0.471379E-01 +PKER_SDRYG( 24, 53) = 0.410008E-01 +PKER_SDRYG( 24, 54) = 0.358942E-01 +PKER_SDRYG( 24, 55) = 0.317729E-01 +PKER_SDRYG( 24, 56) = 0.285445E-01 +PKER_SDRYG( 24, 57) = 0.261582E-01 +PKER_SDRYG( 24, 58) = 0.245542E-01 +PKER_SDRYG( 24, 59) = 0.236475E-01 +PKER_SDRYG( 24, 60) = 0.233281E-01 +PKER_SDRYG( 24, 61) = 0.235527E-01 +PKER_SDRYG( 24, 62) = 0.242044E-01 +PKER_SDRYG( 24, 63) = 0.251935E-01 +PKER_SDRYG( 24, 64) = 0.264894E-01 +PKER_SDRYG( 24, 65) = 0.279912E-01 +PKER_SDRYG( 24, 66) = 0.296368E-01 +PKER_SDRYG( 24, 67) = 0.313850E-01 +PKER_SDRYG( 24, 68) = 0.331947E-01 +PKER_SDRYG( 24, 69) = 0.350172E-01 +PKER_SDRYG( 24, 70) = 0.368385E-01 +PKER_SDRYG( 24, 71) = 0.386288E-01 +PKER_SDRYG( 24, 72) = 0.403749E-01 +PKER_SDRYG( 24, 73) = 0.420647E-01 +PKER_SDRYG( 24, 74) = 0.436892E-01 +PKER_SDRYG( 24, 75) = 0.452460E-01 +PKER_SDRYG( 24, 76) = 0.467291E-01 +PKER_SDRYG( 24, 77) = 0.481362E-01 +PKER_SDRYG( 24, 78) = 0.494656E-01 +PKER_SDRYG( 24, 79) = 0.507207E-01 +PKER_SDRYG( 24, 80) = 0.519066E-01 +PKER_SDRYG( 25, 1) = 0.312272E+01 +PKER_SDRYG( 25, 2) = 0.293021E+01 +PKER_SDRYG( 25, 3) = 0.274944E+01 +PKER_SDRYG( 25, 4) = 0.257970E+01 +PKER_SDRYG( 25, 5) = 0.242031E+01 +PKER_SDRYG( 25, 6) = 0.227065E+01 +PKER_SDRYG( 25, 7) = 0.213012E+01 +PKER_SDRYG( 25, 8) = 0.199817E+01 +PKER_SDRYG( 25, 9) = 0.187426E+01 +PKER_SDRYG( 25, 10) = 0.175791E+01 +PKER_SDRYG( 25, 11) = 0.164866E+01 +PKER_SDRYG( 25, 12) = 0.154607E+01 +PKER_SDRYG( 25, 13) = 0.144974E+01 +PKER_SDRYG( 25, 14) = 0.135928E+01 +PKER_SDRYG( 25, 15) = 0.127434E+01 +PKER_SDRYG( 25, 16) = 0.119457E+01 +PKER_SDRYG( 25, 17) = 0.111967E+01 +PKER_SDRYG( 25, 18) = 0.104932E+01 +PKER_SDRYG( 25, 19) = 0.983257E+00 +PKER_SDRYG( 25, 20) = 0.921213E+00 +PKER_SDRYG( 25, 21) = 0.862939E+00 +PKER_SDRYG( 25, 22) = 0.808203E+00 +PKER_SDRYG( 25, 23) = 0.756785E+00 +PKER_SDRYG( 25, 24) = 0.708478E+00 +PKER_SDRYG( 25, 25) = 0.663086E+00 +PKER_SDRYG( 25, 26) = 0.620425E+00 +PKER_SDRYG( 25, 27) = 0.580319E+00 +PKER_SDRYG( 25, 28) = 0.542604E+00 +PKER_SDRYG( 25, 29) = 0.507119E+00 +PKER_SDRYG( 25, 30) = 0.473714E+00 +PKER_SDRYG( 25, 31) = 0.442243E+00 +PKER_SDRYG( 25, 32) = 0.412566E+00 +PKER_SDRYG( 25, 33) = 0.384544E+00 +PKER_SDRYG( 25, 34) = 0.358043E+00 +PKER_SDRYG( 25, 35) = 0.332931E+00 +PKER_SDRYG( 25, 36) = 0.309077E+00 +PKER_SDRYG( 25, 37) = 0.286354E+00 +PKER_SDRYG( 25, 38) = 0.264640E+00 +PKER_SDRYG( 25, 39) = 0.243825E+00 +PKER_SDRYG( 25, 40) = 0.223821E+00 +PKER_SDRYG( 25, 41) = 0.204568E+00 +PKER_SDRYG( 25, 42) = 0.186052E+00 +PKER_SDRYG( 25, 43) = 0.168306E+00 +PKER_SDRYG( 25, 44) = 0.151409E+00 +PKER_SDRYG( 25, 45) = 0.135468E+00 +PKER_SDRYG( 25, 46) = 0.120590E+00 +PKER_SDRYG( 25, 47) = 0.106855E+00 +PKER_SDRYG( 25, 48) = 0.943025E-01 +PKER_SDRYG( 25, 49) = 0.829276E-01 +PKER_SDRYG( 25, 50) = 0.726914E-01 +PKER_SDRYG( 25, 51) = 0.635357E-01 +PKER_SDRYG( 25, 52) = 0.554038E-01 +PKER_SDRYG( 25, 53) = 0.482351E-01 +PKER_SDRYG( 25, 54) = 0.419759E-01 +PKER_SDRYG( 25, 55) = 0.365989E-01 +PKER_SDRYG( 25, 56) = 0.320611E-01 +PKER_SDRYG( 25, 57) = 0.283066E-01 +PKER_SDRYG( 25, 58) = 0.253217E-01 +PKER_SDRYG( 25, 59) = 0.230681E-01 +PKER_SDRYG( 25, 60) = 0.214485E-01 +PKER_SDRYG( 25, 61) = 0.204594E-01 +PKER_SDRYG( 25, 62) = 0.199802E-01 +PKER_SDRYG( 25, 63) = 0.199893E-01 +PKER_SDRYG( 25, 64) = 0.203928E-01 +PKER_SDRYG( 25, 65) = 0.211342E-01 +PKER_SDRYG( 25, 66) = 0.221323E-01 +PKER_SDRYG( 25, 67) = 0.233322E-01 +PKER_SDRYG( 25, 68) = 0.246954E-01 +PKER_SDRYG( 25, 69) = 0.261541E-01 +PKER_SDRYG( 25, 70) = 0.276764E-01 +PKER_SDRYG( 25, 71) = 0.292337E-01 +PKER_SDRYG( 25, 72) = 0.307948E-01 +PKER_SDRYG( 25, 73) = 0.323388E-01 +PKER_SDRYG( 25, 74) = 0.338507E-01 +PKER_SDRYG( 25, 75) = 0.353179E-01 +PKER_SDRYG( 25, 76) = 0.367344E-01 +PKER_SDRYG( 25, 77) = 0.380928E-01 +PKER_SDRYG( 25, 78) = 0.393925E-01 +PKER_SDRYG( 25, 79) = 0.406269E-01 +PKER_SDRYG( 25, 80) = 0.417949E-01 +PKER_SDRYG( 26, 1) = 0.312740E+01 +PKER_SDRYG( 26, 2) = 0.293488E+01 +PKER_SDRYG( 26, 3) = 0.275412E+01 +PKER_SDRYG( 26, 4) = 0.258438E+01 +PKER_SDRYG( 26, 5) = 0.242499E+01 +PKER_SDRYG( 26, 6) = 0.227533E+01 +PKER_SDRYG( 26, 7) = 0.213481E+01 +PKER_SDRYG( 26, 8) = 0.200285E+01 +PKER_SDRYG( 26, 9) = 0.187895E+01 +PKER_SDRYG( 26, 10) = 0.176260E+01 +PKER_SDRYG( 26, 11) = 0.165335E+01 +PKER_SDRYG( 26, 12) = 0.155077E+01 +PKER_SDRYG( 26, 13) = 0.145444E+01 +PKER_SDRYG( 26, 14) = 0.136398E+01 +PKER_SDRYG( 26, 15) = 0.127904E+01 +PKER_SDRYG( 26, 16) = 0.119928E+01 +PKER_SDRYG( 26, 17) = 0.112439E+01 +PKER_SDRYG( 26, 18) = 0.105405E+01 +PKER_SDRYG( 26, 19) = 0.987997E+00 +PKER_SDRYG( 26, 20) = 0.925966E+00 +PKER_SDRYG( 26, 21) = 0.867709E+00 +PKER_SDRYG( 26, 22) = 0.812992E+00 +PKER_SDRYG( 26, 23) = 0.761598E+00 +PKER_SDRYG( 26, 24) = 0.713319E+00 +PKER_SDRYG( 26, 25) = 0.667963E+00 +PKER_SDRYG( 26, 26) = 0.625344E+00 +PKER_SDRYG( 26, 27) = 0.585291E+00 +PKER_SDRYG( 26, 28) = 0.547639E+00 +PKER_SDRYG( 26, 29) = 0.512232E+00 +PKER_SDRYG( 26, 30) = 0.478922E+00 +PKER_SDRYG( 26, 31) = 0.447567E+00 +PKER_SDRYG( 26, 32) = 0.418032E+00 +PKER_SDRYG( 26, 33) = 0.390184E+00 +PKER_SDRYG( 26, 34) = 0.363896E+00 +PKER_SDRYG( 26, 35) = 0.339042E+00 +PKER_SDRYG( 26, 36) = 0.315501E+00 +PKER_SDRYG( 26, 37) = 0.293150E+00 +PKER_SDRYG( 26, 38) = 0.271872E+00 +PKER_SDRYG( 26, 39) = 0.251556E+00 +PKER_SDRYG( 26, 40) = 0.232100E+00 +PKER_SDRYG( 26, 41) = 0.213421E+00 +PKER_SDRYG( 26, 42) = 0.195465E+00 +PKER_SDRYG( 26, 43) = 0.178217E+00 +PKER_SDRYG( 26, 44) = 0.161705E+00 +PKER_SDRYG( 26, 45) = 0.145996E+00 +PKER_SDRYG( 26, 46) = 0.131182E+00 +PKER_SDRYG( 26, 47) = 0.117353E+00 +PKER_SDRYG( 26, 48) = 0.104576E+00 +PKER_SDRYG( 26, 49) = 0.928753E-01 +PKER_SDRYG( 26, 50) = 0.822363E-01 +PKER_SDRYG( 26, 51) = 0.726111E-01 +PKER_SDRYG( 26, 52) = 0.639383E-01 +PKER_SDRYG( 26, 53) = 0.561507E-01 +PKER_SDRYG( 26, 54) = 0.491858E-01 +PKER_SDRYG( 26, 55) = 0.429946E-01 +PKER_SDRYG( 26, 56) = 0.375430E-01 +PKER_SDRYG( 26, 57) = 0.327992E-01 +PKER_SDRYG( 26, 58) = 0.287370E-01 +PKER_SDRYG( 26, 59) = 0.253369E-01 +PKER_SDRYG( 26, 60) = 0.225882E-01 +PKER_SDRYG( 26, 61) = 0.204316E-01 +PKER_SDRYG( 26, 62) = 0.188398E-01 +PKER_SDRYG( 26, 63) = 0.177875E-01 +PKER_SDRYG( 26, 64) = 0.172085E-01 +PKER_SDRYG( 26, 65) = 0.170417E-01 +PKER_SDRYG( 26, 66) = 0.172497E-01 +PKER_SDRYG( 26, 67) = 0.177584E-01 +PKER_SDRYG( 26, 68) = 0.185080E-01 +PKER_SDRYG( 26, 69) = 0.194673E-01 +PKER_SDRYG( 26, 70) = 0.205752E-01 +PKER_SDRYG( 26, 71) = 0.217845E-01 +PKER_SDRYG( 26, 72) = 0.230647E-01 +PKER_SDRYG( 26, 73) = 0.243883E-01 +PKER_SDRYG( 26, 74) = 0.257208E-01 +PKER_SDRYG( 26, 75) = 0.270503E-01 +PKER_SDRYG( 26, 76) = 0.283574E-01 +PKER_SDRYG( 26, 77) = 0.296325E-01 +PKER_SDRYG( 26, 78) = 0.308653E-01 +PKER_SDRYG( 26, 79) = 0.320509E-01 +PKER_SDRYG( 26, 80) = 0.331872E-01 +PKER_SDRYG( 27, 1) = 0.313140E+01 +PKER_SDRYG( 27, 2) = 0.293889E+01 +PKER_SDRYG( 27, 3) = 0.275812E+01 +PKER_SDRYG( 27, 4) = 0.258838E+01 +PKER_SDRYG( 27, 5) = 0.242900E+01 +PKER_SDRYG( 27, 6) = 0.227934E+01 +PKER_SDRYG( 27, 7) = 0.213881E+01 +PKER_SDRYG( 27, 8) = 0.200686E+01 +PKER_SDRYG( 27, 9) = 0.188295E+01 +PKER_SDRYG( 27, 10) = 0.176661E+01 +PKER_SDRYG( 27, 11) = 0.165736E+01 +PKER_SDRYG( 27, 12) = 0.155478E+01 +PKER_SDRYG( 27, 13) = 0.145845E+01 +PKER_SDRYG( 27, 14) = 0.136800E+01 +PKER_SDRYG( 27, 15) = 0.128307E+01 +PKER_SDRYG( 27, 16) = 0.120331E+01 +PKER_SDRYG( 27, 17) = 0.112842E+01 +PKER_SDRYG( 27, 18) = 0.105809E+01 +PKER_SDRYG( 27, 19) = 0.992047E+00 +PKER_SDRYG( 27, 20) = 0.930026E+00 +PKER_SDRYG( 27, 21) = 0.871781E+00 +PKER_SDRYG( 27, 22) = 0.817079E+00 +PKER_SDRYG( 27, 23) = 0.765702E+00 +PKER_SDRYG( 27, 24) = 0.717445E+00 +PKER_SDRYG( 27, 25) = 0.672115E+00 +PKER_SDRYG( 27, 26) = 0.629528E+00 +PKER_SDRYG( 27, 27) = 0.589513E+00 +PKER_SDRYG( 27, 28) = 0.551908E+00 +PKER_SDRYG( 27, 29) = 0.516558E+00 +PKER_SDRYG( 27, 30) = 0.483318E+00 +PKER_SDRYG( 27, 31) = 0.452049E+00 +PKER_SDRYG( 27, 32) = 0.422618E+00 +PKER_SDRYG( 27, 33) = 0.394898E+00 +PKER_SDRYG( 27, 34) = 0.368766E+00 +PKER_SDRYG( 27, 35) = 0.344102E+00 +PKER_SDRYG( 27, 36) = 0.320791E+00 +PKER_SDRYG( 27, 37) = 0.298718E+00 +PKER_SDRYG( 27, 38) = 0.277772E+00 +PKER_SDRYG( 27, 39) = 0.257843E+00 +PKER_SDRYG( 27, 40) = 0.238828E+00 +PKER_SDRYG( 27, 41) = 0.220635E+00 +PKER_SDRYG( 27, 42) = 0.203186E+00 +PKER_SDRYG( 27, 43) = 0.186431E+00 +PKER_SDRYG( 27, 44) = 0.170354E+00 +PKER_SDRYG( 27, 45) = 0.154979E+00 +PKER_SDRYG( 27, 46) = 0.140365E+00 +PKER_SDRYG( 27, 47) = 0.126590E+00 +PKER_SDRYG( 27, 48) = 0.113733E+00 +PKER_SDRYG( 27, 49) = 0.101848E+00 +PKER_SDRYG( 27, 50) = 0.909527E-01 +PKER_SDRYG( 27, 51) = 0.810258E-01 +PKER_SDRYG( 27, 52) = 0.720165E-01 +PKER_SDRYG( 27, 53) = 0.638590E-01 +PKER_SDRYG( 27, 54) = 0.564823E-01 +PKER_SDRYG( 27, 55) = 0.498226E-01 +PKER_SDRYG( 27, 56) = 0.438282E-01 +PKER_SDRYG( 27, 57) = 0.384597E-01 +PKER_SDRYG( 27, 58) = 0.336864E-01 +PKER_SDRYG( 27, 59) = 0.294887E-01 +PKER_SDRYG( 27, 60) = 0.258548E-01 +PKER_SDRYG( 27, 61) = 0.227747E-01 +PKER_SDRYG( 27, 62) = 0.202164E-01 +PKER_SDRYG( 27, 63) = 0.181747E-01 +PKER_SDRYG( 27, 64) = 0.166401E-01 +PKER_SDRYG( 27, 65) = 0.155455E-01 +PKER_SDRYG( 27, 66) = 0.148848E-01 +PKER_SDRYG( 27, 67) = 0.145861E-01 +PKER_SDRYG( 27, 68) = 0.146311E-01 +PKER_SDRYG( 27, 69) = 0.149518E-01 +PKER_SDRYG( 27, 70) = 0.155127E-01 +PKER_SDRYG( 27, 71) = 0.162573E-01 +PKER_SDRYG( 27, 72) = 0.171427E-01 +PKER_SDRYG( 27, 73) = 0.181459E-01 +PKER_SDRYG( 27, 74) = 0.192163E-01 +PKER_SDRYG( 27, 75) = 0.203307E-01 +PKER_SDRYG( 27, 76) = 0.214704E-01 +PKER_SDRYG( 27, 77) = 0.226118E-01 +PKER_SDRYG( 27, 78) = 0.237398E-01 +PKER_SDRYG( 27, 79) = 0.248439E-01 +PKER_SDRYG( 27, 80) = 0.259151E-01 +PKER_SDRYG( 28, 1) = 0.313482E+01 +PKER_SDRYG( 28, 2) = 0.294231E+01 +PKER_SDRYG( 28, 3) = 0.276154E+01 +PKER_SDRYG( 28, 4) = 0.259180E+01 +PKER_SDRYG( 28, 5) = 0.243242E+01 +PKER_SDRYG( 28, 6) = 0.228277E+01 +PKER_SDRYG( 28, 7) = 0.214224E+01 +PKER_SDRYG( 28, 8) = 0.201029E+01 +PKER_SDRYG( 28, 9) = 0.188638E+01 +PKER_SDRYG( 28, 10) = 0.177004E+01 +PKER_SDRYG( 28, 11) = 0.166079E+01 +PKER_SDRYG( 28, 12) = 0.155821E+01 +PKER_SDRYG( 28, 13) = 0.146189E+01 +PKER_SDRYG( 28, 14) = 0.137144E+01 +PKER_SDRYG( 28, 15) = 0.128651E+01 +PKER_SDRYG( 28, 16) = 0.120676E+01 +PKER_SDRYG( 28, 17) = 0.113187E+01 +PKER_SDRYG( 28, 18) = 0.106155E+01 +PKER_SDRYG( 28, 19) = 0.995508E+00 +PKER_SDRYG( 28, 20) = 0.933495E+00 +PKER_SDRYG( 28, 21) = 0.875258E+00 +PKER_SDRYG( 28, 22) = 0.820568E+00 +PKER_SDRYG( 28, 23) = 0.769204E+00 +PKER_SDRYG( 28, 24) = 0.720964E+00 +PKER_SDRYG( 28, 25) = 0.675653E+00 +PKER_SDRYG( 28, 26) = 0.633090E+00 +PKER_SDRYG( 28, 27) = 0.593104E+00 +PKER_SDRYG( 28, 28) = 0.555533E+00 +PKER_SDRYG( 28, 29) = 0.520226E+00 +PKER_SDRYG( 28, 30) = 0.487038E+00 +PKER_SDRYG( 28, 31) = 0.455832E+00 +PKER_SDRYG( 28, 32) = 0.426477E+00 +PKER_SDRYG( 28, 33) = 0.398851E+00 +PKER_SDRYG( 28, 34) = 0.372833E+00 +PKER_SDRYG( 28, 35) = 0.348309E+00 +PKER_SDRYG( 28, 36) = 0.325168E+00 +PKER_SDRYG( 28, 37) = 0.303302E+00 +PKER_SDRYG( 28, 38) = 0.282604E+00 +PKER_SDRYG( 28, 39) = 0.262970E+00 +PKER_SDRYG( 28, 40) = 0.244301E+00 +PKER_SDRYG( 28, 41) = 0.226500E+00 +PKER_SDRYG( 28, 42) = 0.209481E+00 +PKER_SDRYG( 28, 43) = 0.193174E+00 +PKER_SDRYG( 28, 44) = 0.177531E+00 +PKER_SDRYG( 28, 45) = 0.162537E+00 +PKER_SDRYG( 28, 46) = 0.148212E+00 +PKER_SDRYG( 28, 47) = 0.134605E+00 +PKER_SDRYG( 28, 48) = 0.121788E+00 +PKER_SDRYG( 28, 49) = 0.109827E+00 +PKER_SDRYG( 28, 50) = 0.987695E-01 +PKER_SDRYG( 28, 51) = 0.886258E-01 +PKER_SDRYG( 28, 52) = 0.793726E-01 +PKER_SDRYG( 28, 53) = 0.709584E-01 +PKER_SDRYG( 28, 54) = 0.633172E-01 +PKER_SDRYG( 28, 55) = 0.563782E-01 +PKER_SDRYG( 28, 56) = 0.500750E-01 +PKER_SDRYG( 28, 57) = 0.443534E-01 +PKER_SDRYG( 28, 58) = 0.391703E-01 +PKER_SDRYG( 28, 59) = 0.344918E-01 +PKER_SDRYG( 28, 60) = 0.302964E-01 +PKER_SDRYG( 28, 61) = 0.265756E-01 +PKER_SDRYG( 28, 62) = 0.233172E-01 +PKER_SDRYG( 28, 63) = 0.205132E-01 +PKER_SDRYG( 28, 64) = 0.181605E-01 +PKER_SDRYG( 28, 65) = 0.162558E-01 +PKER_SDRYG( 28, 66) = 0.147609E-01 +PKER_SDRYG( 28, 67) = 0.136620E-01 +PKER_SDRYG( 28, 68) = 0.129448E-01 +PKER_SDRYG( 28, 69) = 0.125564E-01 +PKER_SDRYG( 28, 70) = 0.124665E-01 +PKER_SDRYG( 28, 71) = 0.126409E-01 +PKER_SDRYG( 28, 72) = 0.130274E-01 +PKER_SDRYG( 28, 73) = 0.135904E-01 +PKER_SDRYG( 28, 74) = 0.142998E-01 +PKER_SDRYG( 28, 75) = 0.151150E-01 +PKER_SDRYG( 28, 76) = 0.160038E-01 +PKER_SDRYG( 28, 77) = 0.169418E-01 +PKER_SDRYG( 28, 78) = 0.179108E-01 +PKER_SDRYG( 28, 79) = 0.188859E-01 +PKER_SDRYG( 28, 80) = 0.198573E-01 +PKER_SDRYG( 29, 1) = 0.313775E+01 +PKER_SDRYG( 29, 2) = 0.294524E+01 +PKER_SDRYG( 29, 3) = 0.276447E+01 +PKER_SDRYG( 29, 4) = 0.259474E+01 +PKER_SDRYG( 29, 5) = 0.243535E+01 +PKER_SDRYG( 29, 6) = 0.228570E+01 +PKER_SDRYG( 29, 7) = 0.214517E+01 +PKER_SDRYG( 29, 8) = 0.201322E+01 +PKER_SDRYG( 29, 9) = 0.188932E+01 +PKER_SDRYG( 29, 10) = 0.177297E+01 +PKER_SDRYG( 29, 11) = 0.166373E+01 +PKER_SDRYG( 29, 12) = 0.156115E+01 +PKER_SDRYG( 29, 13) = 0.146483E+01 +PKER_SDRYG( 29, 14) = 0.137438E+01 +PKER_SDRYG( 29, 15) = 0.128945E+01 +PKER_SDRYG( 29, 16) = 0.120970E+01 +PKER_SDRYG( 29, 17) = 0.113482E+01 +PKER_SDRYG( 29, 18) = 0.106450E+01 +PKER_SDRYG( 29, 19) = 0.998466E+00 +PKER_SDRYG( 29, 20) = 0.936458E+00 +PKER_SDRYG( 29, 21) = 0.878229E+00 +PKER_SDRYG( 29, 22) = 0.823547E+00 +PKER_SDRYG( 29, 23) = 0.772194E+00 +PKER_SDRYG( 29, 24) = 0.723965E+00 +PKER_SDRYG( 29, 25) = 0.678669E+00 +PKER_SDRYG( 29, 26) = 0.636124E+00 +PKER_SDRYG( 29, 27) = 0.596159E+00 +PKER_SDRYG( 29, 28) = 0.558615E+00 +PKER_SDRYG( 29, 29) = 0.523340E+00 +PKER_SDRYG( 29, 30) = 0.490190E+00 +PKER_SDRYG( 29, 31) = 0.459030E+00 +PKER_SDRYG( 29, 32) = 0.429733E+00 +PKER_SDRYG( 29, 33) = 0.402176E+00 +PKER_SDRYG( 29, 34) = 0.376242E+00 +PKER_SDRYG( 29, 35) = 0.351822E+00 +PKER_SDRYG( 29, 36) = 0.328807E+00 +PKER_SDRYG( 29, 37) = 0.307093E+00 +PKER_SDRYG( 29, 38) = 0.286580E+00 +PKER_SDRYG( 29, 39) = 0.267168E+00 +PKER_SDRYG( 29, 40) = 0.248763E+00 +PKER_SDRYG( 29, 41) = 0.231269E+00 +PKER_SDRYG( 29, 42) = 0.214600E+00 +PKER_SDRYG( 29, 43) = 0.198675E+00 +PKER_SDRYG( 29, 44) = 0.183429E+00 +PKER_SDRYG( 29, 45) = 0.168818E+00 +PKER_SDRYG( 29, 46) = 0.154826E+00 +PKER_SDRYG( 29, 47) = 0.141470E+00 +PKER_SDRYG( 29, 48) = 0.128793E+00 +PKER_SDRYG( 29, 49) = 0.116859E+00 +PKER_SDRYG( 29, 50) = 0.105725E+00 +PKER_SDRYG( 29, 51) = 0.954304E-01 +PKER_SDRYG( 29, 52) = 0.859836E-01 +PKER_SDRYG( 29, 53) = 0.773596E-01 +PKER_SDRYG( 29, 54) = 0.695082E-01 +PKER_SDRYG( 29, 55) = 0.623650E-01 +PKER_SDRYG( 29, 56) = 0.558611E-01 +PKER_SDRYG( 29, 57) = 0.499316E-01 +PKER_SDRYG( 29, 58) = 0.445208E-01 +PKER_SDRYG( 29, 59) = 0.395814E-01 +PKER_SDRYG( 29, 60) = 0.350788E-01 +PKER_SDRYG( 29, 61) = 0.309897E-01 +PKER_SDRYG( 29, 62) = 0.272977E-01 +PKER_SDRYG( 29, 63) = 0.239931E-01 +PKER_SDRYG( 29, 64) = 0.210731E-01 +PKER_SDRYG( 29, 65) = 0.185324E-01 +PKER_SDRYG( 29, 66) = 0.163751E-01 +PKER_SDRYG( 29, 67) = 0.145805E-01 +PKER_SDRYG( 29, 68) = 0.131445E-01 +PKER_SDRYG( 29, 69) = 0.120720E-01 +PKER_SDRYG( 29, 70) = 0.113116E-01 +PKER_SDRYG( 29, 71) = 0.108560E-01 +PKER_SDRYG( 29, 72) = 0.106640E-01 +PKER_SDRYG( 29, 73) = 0.107167E-01 +PKER_SDRYG( 29, 74) = 0.109632E-01 +PKER_SDRYG( 29, 75) = 0.113846E-01 +PKER_SDRYG( 29, 76) = 0.119375E-01 +PKER_SDRYG( 29, 77) = 0.125899E-01 +PKER_SDRYG( 29, 78) = 0.133280E-01 +PKER_SDRYG( 29, 79) = 0.141136E-01 +PKER_SDRYG( 29, 80) = 0.149298E-01 +PKER_SDRYG( 30, 1) = 0.314026E+01 +PKER_SDRYG( 30, 2) = 0.294775E+01 +PKER_SDRYG( 30, 3) = 0.276698E+01 +PKER_SDRYG( 30, 4) = 0.259724E+01 +PKER_SDRYG( 30, 5) = 0.243786E+01 +PKER_SDRYG( 30, 6) = 0.228821E+01 +PKER_SDRYG( 30, 7) = 0.214768E+01 +PKER_SDRYG( 30, 8) = 0.201573E+01 +PKER_SDRYG( 30, 9) = 0.189183E+01 +PKER_SDRYG( 30, 10) = 0.177549E+01 +PKER_SDRYG( 30, 11) = 0.166624E+01 +PKER_SDRYG( 30, 12) = 0.156366E+01 +PKER_SDRYG( 30, 13) = 0.146734E+01 +PKER_SDRYG( 30, 14) = 0.137690E+01 +PKER_SDRYG( 30, 15) = 0.129197E+01 +PKER_SDRYG( 30, 16) = 0.121222E+01 +PKER_SDRYG( 30, 17) = 0.113734E+01 +PKER_SDRYG( 30, 18) = 0.106702E+01 +PKER_SDRYG( 30, 19) = 0.100099E+01 +PKER_SDRYG( 30, 20) = 0.938991E+00 +PKER_SDRYG( 30, 21) = 0.880767E+00 +PKER_SDRYG( 30, 22) = 0.826092E+00 +PKER_SDRYG( 30, 23) = 0.774746E+00 +PKER_SDRYG( 30, 24) = 0.726527E+00 +PKER_SDRYG( 30, 25) = 0.681242E+00 +PKER_SDRYG( 30, 26) = 0.638710E+00 +PKER_SDRYG( 30, 27) = 0.598762E+00 +PKER_SDRYG( 30, 28) = 0.561237E+00 +PKER_SDRYG( 30, 29) = 0.525986E+00 +PKER_SDRYG( 30, 30) = 0.492864E+00 +PKER_SDRYG( 30, 31) = 0.461740E+00 +PKER_SDRYG( 30, 32) = 0.432485E+00 +PKER_SDRYG( 30, 33) = 0.404979E+00 +PKER_SDRYG( 30, 34) = 0.379109E+00 +PKER_SDRYG( 30, 35) = 0.354764E+00 +PKER_SDRYG( 30, 36) = 0.331842E+00 +PKER_SDRYG( 30, 37) = 0.310241E+00 +PKER_SDRYG( 30, 38) = 0.289866E+00 +PKER_SDRYG( 30, 39) = 0.270620E+00 +PKER_SDRYG( 30, 40) = 0.252414E+00 +PKER_SDRYG( 30, 41) = 0.235157E+00 +PKER_SDRYG( 30, 42) = 0.218763E+00 +PKER_SDRYG( 30, 43) = 0.203150E+00 +PKER_SDRYG( 30, 44) = 0.188244E+00 +PKER_SDRYG( 30, 45) = 0.173985E+00 +PKER_SDRYG( 30, 46) = 0.160331E+00 +PKER_SDRYG( 30, 47) = 0.147268E+00 +PKER_SDRYG( 30, 48) = 0.134807E+00 +PKER_SDRYG( 30, 49) = 0.122990E+00 +PKER_SDRYG( 30, 50) = 0.111870E+00 +PKER_SDRYG( 30, 51) = 0.101498E+00 +PKER_SDRYG( 30, 52) = 0.919089E-01 +PKER_SDRYG( 30, 53) = 0.831067E-01 +PKER_SDRYG( 30, 54) = 0.750668E-01 +PKER_SDRYG( 30, 55) = 0.677413E-01 +PKER_SDRYG( 30, 56) = 0.610688E-01 +PKER_SDRYG( 30, 57) = 0.549841E-01 +PKER_SDRYG( 30, 58) = 0.494242E-01 +PKER_SDRYG( 30, 59) = 0.443338E-01 +PKER_SDRYG( 30, 60) = 0.396667E-01 +PKER_SDRYG( 30, 61) = 0.353851E-01 +PKER_SDRYG( 30, 62) = 0.314617E-01 +PKER_SDRYG( 30, 63) = 0.278788E-01 +PKER_SDRYG( 30, 64) = 0.246216E-01 +PKER_SDRYG( 30, 65) = 0.216840E-01 +PKER_SDRYG( 30, 66) = 0.190676E-01 +PKER_SDRYG( 30, 67) = 0.167678E-01 +PKER_SDRYG( 30, 68) = 0.147843E-01 +PKER_SDRYG( 30, 69) = 0.131194E-01 +PKER_SDRYG( 30, 70) = 0.117708E-01 +PKER_SDRYG( 30, 71) = 0.107143E-01 +PKER_SDRYG( 30, 72) = 0.994008E-02 +PKER_SDRYG( 30, 73) = 0.944116E-02 +PKER_SDRYG( 30, 74) = 0.917473E-02 +PKER_SDRYG( 30, 75) = 0.912540E-02 +PKER_SDRYG( 30, 76) = 0.926519E-02 +PKER_SDRYG( 30, 77) = 0.955670E-02 +PKER_SDRYG( 30, 78) = 0.997708E-02 +PKER_SDRYG( 30, 79) = 0.105008E-01 +PKER_SDRYG( 30, 80) = 0.111005E-01 +PKER_SDRYG( 31, 1) = 0.314241E+01 +PKER_SDRYG( 31, 2) = 0.294989E+01 +PKER_SDRYG( 31, 3) = 0.276913E+01 +PKER_SDRYG( 31, 4) = 0.259939E+01 +PKER_SDRYG( 31, 5) = 0.244001E+01 +PKER_SDRYG( 31, 6) = 0.229035E+01 +PKER_SDRYG( 31, 7) = 0.214983E+01 +PKER_SDRYG( 31, 8) = 0.201788E+01 +PKER_SDRYG( 31, 9) = 0.189397E+01 +PKER_SDRYG( 31, 10) = 0.177763E+01 +PKER_SDRYG( 31, 11) = 0.166839E+01 +PKER_SDRYG( 31, 12) = 0.156581E+01 +PKER_SDRYG( 31, 13) = 0.146949E+01 +PKER_SDRYG( 31, 14) = 0.137905E+01 +PKER_SDRYG( 31, 15) = 0.129412E+01 +PKER_SDRYG( 31, 16) = 0.121438E+01 +PKER_SDRYG( 31, 17) = 0.113950E+01 +PKER_SDRYG( 31, 18) = 0.106918E+01 +PKER_SDRYG( 31, 19) = 0.100316E+01 +PKER_SDRYG( 31, 20) = 0.941157E+00 +PKER_SDRYG( 31, 21) = 0.882937E+00 +PKER_SDRYG( 31, 22) = 0.828266E+00 +PKER_SDRYG( 31, 23) = 0.776926E+00 +PKER_SDRYG( 31, 24) = 0.728714E+00 +PKER_SDRYG( 31, 25) = 0.683437E+00 +PKER_SDRYG( 31, 26) = 0.640916E+00 +PKER_SDRYG( 31, 27) = 0.600980E+00 +PKER_SDRYG( 31, 28) = 0.563470E+00 +PKER_SDRYG( 31, 29) = 0.528236E+00 +PKER_SDRYG( 31, 30) = 0.495137E+00 +PKER_SDRYG( 31, 31) = 0.464039E+00 +PKER_SDRYG( 31, 32) = 0.434815E+00 +PKER_SDRYG( 31, 33) = 0.407348E+00 +PKER_SDRYG( 31, 34) = 0.381525E+00 +PKER_SDRYG( 31, 35) = 0.357237E+00 +PKER_SDRYG( 31, 36) = 0.334384E+00 +PKER_SDRYG( 31, 37) = 0.312867E+00 +PKER_SDRYG( 31, 38) = 0.292593E+00 +PKER_SDRYG( 31, 39) = 0.273472E+00 +PKER_SDRYG( 31, 40) = 0.255415E+00 +PKER_SDRYG( 31, 41) = 0.238337E+00 +PKER_SDRYG( 31, 42) = 0.222155E+00 +PKER_SDRYG( 31, 43) = 0.206789E+00 +PKER_SDRYG( 31, 44) = 0.192162E+00 +PKER_SDRYG( 31, 45) = 0.178206E+00 +PKER_SDRYG( 31, 46) = 0.164865E+00 +PKER_SDRYG( 31, 47) = 0.152101E+00 +PKER_SDRYG( 31, 48) = 0.139898E+00 +PKER_SDRYG( 31, 49) = 0.128268E+00 +PKER_SDRYG( 31, 50) = 0.117245E+00 +PKER_SDRYG( 31, 51) = 0.106877E+00 +PKER_SDRYG( 31, 52) = 0.972093E-01 +PKER_SDRYG( 31, 53) = 0.882710E-01 +PKER_SDRYG( 31, 54) = 0.800646E-01 +PKER_SDRYG( 31, 55) = 0.725658E-01 +PKER_SDRYG( 31, 56) = 0.657293E-01 +PKER_SDRYG( 31, 57) = 0.594973E-01 +PKER_SDRYG( 31, 58) = 0.538082E-01 +PKER_SDRYG( 31, 59) = 0.486029E-01 +PKER_SDRYG( 31, 60) = 0.438281E-01 +PKER_SDRYG( 31, 61) = 0.394382E-01 +PKER_SDRYG( 31, 62) = 0.353958E-01 +PKER_SDRYG( 31, 63) = 0.316723E-01 +PKER_SDRYG( 31, 64) = 0.282443E-01 +PKER_SDRYG( 31, 65) = 0.250971E-01 +PKER_SDRYG( 31, 66) = 0.222220E-01 +PKER_SDRYG( 31, 67) = 0.196134E-01 +PKER_SDRYG( 31, 68) = 0.172700E-01 +PKER_SDRYG( 31, 69) = 0.151950E-01 +PKER_SDRYG( 31, 70) = 0.133842E-01 +PKER_SDRYG( 31, 71) = 0.118468E-01 +PKER_SDRYG( 31, 72) = 0.105682E-01 +PKER_SDRYG( 31, 73) = 0.954383E-02 +PKER_SDRYG( 31, 74) = 0.878311E-02 +PKER_SDRYG( 31, 75) = 0.824730E-02 +PKER_SDRYG( 31, 76) = 0.792838E-02 +PKER_SDRYG( 31, 77) = 0.780258E-02 +PKER_SDRYG( 31, 78) = 0.785165E-02 +PKER_SDRYG( 31, 79) = 0.803984E-02 +PKER_SDRYG( 31, 80) = 0.835401E-02 +PKER_SDRYG( 32, 1) = 0.314424E+01 +PKER_SDRYG( 32, 2) = 0.295173E+01 +PKER_SDRYG( 32, 3) = 0.277096E+01 +PKER_SDRYG( 32, 4) = 0.260122E+01 +PKER_SDRYG( 32, 5) = 0.244184E+01 +PKER_SDRYG( 32, 6) = 0.229219E+01 +PKER_SDRYG( 32, 7) = 0.215166E+01 +PKER_SDRYG( 32, 8) = 0.201971E+01 +PKER_SDRYG( 32, 9) = 0.189581E+01 +PKER_SDRYG( 32, 10) = 0.177947E+01 +PKER_SDRYG( 32, 11) = 0.167023E+01 +PKER_SDRYG( 32, 12) = 0.156765E+01 +PKER_SDRYG( 32, 13) = 0.147133E+01 +PKER_SDRYG( 32, 14) = 0.138089E+01 +PKER_SDRYG( 32, 15) = 0.129596E+01 +PKER_SDRYG( 32, 16) = 0.121622E+01 +PKER_SDRYG( 32, 17) = 0.114134E+01 +PKER_SDRYG( 32, 18) = 0.107103E+01 +PKER_SDRYG( 32, 19) = 0.100500E+01 +PKER_SDRYG( 32, 20) = 0.943008E+00 +PKER_SDRYG( 32, 21) = 0.884791E+00 +PKER_SDRYG( 32, 22) = 0.830124E+00 +PKER_SDRYG( 32, 23) = 0.778789E+00 +PKER_SDRYG( 32, 24) = 0.730582E+00 +PKER_SDRYG( 32, 25) = 0.685312E+00 +PKER_SDRYG( 32, 26) = 0.642798E+00 +PKER_SDRYG( 32, 27) = 0.602872E+00 +PKER_SDRYG( 32, 28) = 0.565373E+00 +PKER_SDRYG( 32, 29) = 0.530153E+00 +PKER_SDRYG( 32, 30) = 0.497070E+00 +PKER_SDRYG( 32, 31) = 0.465991E+00 +PKER_SDRYG( 32, 32) = 0.436792E+00 +PKER_SDRYG( 32, 33) = 0.409354E+00 +PKER_SDRYG( 32, 34) = 0.383565E+00 +PKER_SDRYG( 32, 35) = 0.359320E+00 +PKER_SDRYG( 32, 36) = 0.336518E+00 +PKER_SDRYG( 32, 37) = 0.315064E+00 +PKER_SDRYG( 32, 38) = 0.294866E+00 +PKER_SDRYG( 32, 39) = 0.275837E+00 +PKER_SDRYG( 32, 40) = 0.257892E+00 +PKER_SDRYG( 32, 41) = 0.240949E+00 +PKER_SDRYG( 32, 42) = 0.224929E+00 +PKER_SDRYG( 32, 43) = 0.209753E+00 +PKER_SDRYG( 32, 44) = 0.195347E+00 +PKER_SDRYG( 32, 45) = 0.181641E+00 +PKER_SDRYG( 32, 46) = 0.168572E+00 +PKER_SDRYG( 32, 47) = 0.156087E+00 +PKER_SDRYG( 32, 48) = 0.144150E+00 +PKER_SDRYG( 32, 49) = 0.132746E+00 +PKER_SDRYG( 32, 50) = 0.121885E+00 +PKER_SDRYG( 32, 51) = 0.111598E+00 +PKER_SDRYG( 32, 52) = 0.101925E+00 +PKER_SDRYG( 32, 53) = 0.929079E-01 +PKER_SDRYG( 32, 54) = 0.845713E-01 +PKER_SDRYG( 32, 55) = 0.769159E-01 +PKER_SDRYG( 32, 56) = 0.699183E-01 +PKER_SDRYG( 32, 57) = 0.635355E-01 +PKER_SDRYG( 32, 58) = 0.577136E-01 +PKER_SDRYG( 32, 59) = 0.523950E-01 +PKER_SDRYG( 32, 60) = 0.475243E-01 +PKER_SDRYG( 32, 61) = 0.430512E-01 +PKER_SDRYG( 32, 62) = 0.389325E-01 +PKER_SDRYG( 32, 63) = 0.351313E-01 +PKER_SDRYG( 32, 64) = 0.316183E-01 +PKER_SDRYG( 32, 65) = 0.283700E-01 +PKER_SDRYG( 32, 66) = 0.253685E-01 +PKER_SDRYG( 32, 67) = 0.226014E-01 +PKER_SDRYG( 32, 68) = 0.200616E-01 +PKER_SDRYG( 32, 69) = 0.177438E-01 +PKER_SDRYG( 32, 70) = 0.156482E-01 +PKER_SDRYG( 32, 71) = 0.137766E-01 +PKER_SDRYG( 32, 72) = 0.121294E-01 +PKER_SDRYG( 32, 73) = 0.107083E-01 +PKER_SDRYG( 32, 74) = 0.951507E-02 +PKER_SDRYG( 32, 75) = 0.854960E-02 +PKER_SDRYG( 32, 76) = 0.779589E-02 +PKER_SDRYG( 32, 77) = 0.724397E-02 +PKER_SDRYG( 32, 78) = 0.689318E-02 +PKER_SDRYG( 32, 79) = 0.670835E-02 +PKER_SDRYG( 32, 80) = 0.668173E-02 +PKER_SDRYG( 33, 1) = 0.314581E+01 +PKER_SDRYG( 33, 2) = 0.295330E+01 +PKER_SDRYG( 33, 3) = 0.277253E+01 +PKER_SDRYG( 33, 4) = 0.260280E+01 +PKER_SDRYG( 33, 5) = 0.244341E+01 +PKER_SDRYG( 33, 6) = 0.229376E+01 +PKER_SDRYG( 33, 7) = 0.215323E+01 +PKER_SDRYG( 33, 8) = 0.202128E+01 +PKER_SDRYG( 33, 9) = 0.189738E+01 +PKER_SDRYG( 33, 10) = 0.178104E+01 +PKER_SDRYG( 33, 11) = 0.167180E+01 +PKER_SDRYG( 33, 12) = 0.156922E+01 +PKER_SDRYG( 33, 13) = 0.147291E+01 +PKER_SDRYG( 33, 14) = 0.138246E+01 +PKER_SDRYG( 33, 15) = 0.129754E+01 +PKER_SDRYG( 33, 16) = 0.121780E+01 +PKER_SDRYG( 33, 17) = 0.114292E+01 +PKER_SDRYG( 33, 18) = 0.107261E+01 +PKER_SDRYG( 33, 19) = 0.100659E+01 +PKER_SDRYG( 33, 20) = 0.944590E+00 +PKER_SDRYG( 33, 21) = 0.886376E+00 +PKER_SDRYG( 33, 22) = 0.831711E+00 +PKER_SDRYG( 33, 23) = 0.780380E+00 +PKER_SDRYG( 33, 24) = 0.732177E+00 +PKER_SDRYG( 33, 25) = 0.686912E+00 +PKER_SDRYG( 33, 26) = 0.644404E+00 +PKER_SDRYG( 33, 27) = 0.604485E+00 +PKER_SDRYG( 33, 28) = 0.566995E+00 +PKER_SDRYG( 33, 29) = 0.531785E+00 +PKER_SDRYG( 33, 30) = 0.498715E+00 +PKER_SDRYG( 33, 31) = 0.467651E+00 +PKER_SDRYG( 33, 32) = 0.438470E+00 +PKER_SDRYG( 33, 33) = 0.411054E+00 +PKER_SDRYG( 33, 34) = 0.385291E+00 +PKER_SDRYG( 33, 35) = 0.361078E+00 +PKER_SDRYG( 33, 36) = 0.338315E+00 +PKER_SDRYG( 33, 37) = 0.316908E+00 +PKER_SDRYG( 33, 38) = 0.296767E+00 +PKER_SDRYG( 33, 39) = 0.277807E+00 +PKER_SDRYG( 33, 40) = 0.259946E+00 +PKER_SDRYG( 33, 41) = 0.243104E+00 +PKER_SDRYG( 33, 42) = 0.227205E+00 +PKER_SDRYG( 33, 43) = 0.212175E+00 +PKER_SDRYG( 33, 44) = 0.197941E+00 +PKER_SDRYG( 33, 45) = 0.184435E+00 +PKER_SDRYG( 33, 46) = 0.171590E+00 +PKER_SDRYG( 33, 47) = 0.159348E+00 +PKER_SDRYG( 33, 48) = 0.147660E+00 +PKER_SDRYG( 33, 49) = 0.136493E+00 +PKER_SDRYG( 33, 50) = 0.125832E+00 +PKER_SDRYG( 33, 51) = 0.115684E+00 +PKER_SDRYG( 33, 52) = 0.106078E+00 +PKER_SDRYG( 33, 53) = 0.970492E-01 +PKER_SDRYG( 33, 54) = 0.886343E-01 +PKER_SDRYG( 33, 55) = 0.808544E-01 +PKER_SDRYG( 33, 56) = 0.737092E-01 +PKER_SDRYG( 33, 57) = 0.671759E-01 +PKER_SDRYG( 33, 58) = 0.612140E-01 +PKER_SDRYG( 33, 59) = 0.557733E-01 +PKER_SDRYG( 33, 60) = 0.508001E-01 +PKER_SDRYG( 33, 61) = 0.462428E-01 +PKER_SDRYG( 33, 62) = 0.420544E-01 +PKER_SDRYG( 33, 63) = 0.381941E-01 +PKER_SDRYG( 33, 64) = 0.346270E-01 +PKER_SDRYG( 33, 65) = 0.313244E-01 +PKER_SDRYG( 33, 66) = 0.282623E-01 +PKER_SDRYG( 33, 67) = 0.254222E-01 +PKER_SDRYG( 33, 68) = 0.227902E-01 +PKER_SDRYG( 33, 69) = 0.203548E-01 +PKER_SDRYG( 33, 70) = 0.181098E-01 +PKER_SDRYG( 33, 71) = 0.160530E-01 +PKER_SDRYG( 33, 72) = 0.141818E-01 +PKER_SDRYG( 33, 73) = 0.124982E-01 +PKER_SDRYG( 33, 74) = 0.110068E-01 +PKER_SDRYG( 33, 75) = 0.970368E-02 +PKER_SDRYG( 33, 76) = 0.859751E-02 +PKER_SDRYG( 33, 77) = 0.767929E-02 +PKER_SDRYG( 33, 78) = 0.694381E-02 +PKER_SDRYG( 33, 79) = 0.639919E-02 +PKER_SDRYG( 33, 80) = 0.601899E-02 +PKER_SDRYG( 34, 1) = 0.314716E+01 +PKER_SDRYG( 34, 2) = 0.295464E+01 +PKER_SDRYG( 34, 3) = 0.277388E+01 +PKER_SDRYG( 34, 4) = 0.260414E+01 +PKER_SDRYG( 34, 5) = 0.244476E+01 +PKER_SDRYG( 34, 6) = 0.229510E+01 +PKER_SDRYG( 34, 7) = 0.215458E+01 +PKER_SDRYG( 34, 8) = 0.202263E+01 +PKER_SDRYG( 34, 9) = 0.189873E+01 +PKER_SDRYG( 34, 10) = 0.178239E+01 +PKER_SDRYG( 34, 11) = 0.167315E+01 +PKER_SDRYG( 34, 12) = 0.157057E+01 +PKER_SDRYG( 34, 13) = 0.147425E+01 +PKER_SDRYG( 34, 14) = 0.138381E+01 +PKER_SDRYG( 34, 15) = 0.129889E+01 +PKER_SDRYG( 34, 16) = 0.121914E+01 +PKER_SDRYG( 34, 17) = 0.114427E+01 +PKER_SDRYG( 34, 18) = 0.107396E+01 +PKER_SDRYG( 34, 19) = 0.100794E+01 +PKER_SDRYG( 34, 20) = 0.945943E+00 +PKER_SDRYG( 34, 21) = 0.887731E+00 +PKER_SDRYG( 34, 22) = 0.833069E+00 +PKER_SDRYG( 34, 23) = 0.781740E+00 +PKER_SDRYG( 34, 24) = 0.733540E+00 +PKER_SDRYG( 34, 25) = 0.688279E+00 +PKER_SDRYG( 34, 26) = 0.645776E+00 +PKER_SDRYG( 34, 27) = 0.605862E+00 +PKER_SDRYG( 34, 28) = 0.568379E+00 +PKER_SDRYG( 34, 29) = 0.533177E+00 +PKER_SDRYG( 34, 30) = 0.500116E+00 +PKER_SDRYG( 34, 31) = 0.469064E+00 +PKER_SDRYG( 34, 32) = 0.439896E+00 +PKER_SDRYG( 34, 33) = 0.412496E+00 +PKER_SDRYG( 34, 34) = 0.386754E+00 +PKER_SDRYG( 34, 35) = 0.362565E+00 +PKER_SDRYG( 34, 36) = 0.339831E+00 +PKER_SDRYG( 34, 37) = 0.318459E+00 +PKER_SDRYG( 34, 38) = 0.298361E+00 +PKER_SDRYG( 34, 39) = 0.279453E+00 +PKER_SDRYG( 34, 40) = 0.261654E+00 +PKER_SDRYG( 34, 41) = 0.244888E+00 +PKER_SDRYG( 34, 42) = 0.229081E+00 +PKER_SDRYG( 34, 43) = 0.214161E+00 +PKER_SDRYG( 34, 44) = 0.200059E+00 +PKER_SDRYG( 34, 45) = 0.186708E+00 +PKER_SDRYG( 34, 46) = 0.174043E+00 +PKER_SDRYG( 34, 47) = 0.162003E+00 +PKER_SDRYG( 34, 48) = 0.150534E+00 +PKER_SDRYG( 34, 49) = 0.139590E+00 +PKER_SDRYG( 34, 50) = 0.129139E+00 +PKER_SDRYG( 34, 51) = 0.119169E+00 +PKER_SDRYG( 34, 52) = 0.109684E+00 +PKER_SDRYG( 34, 53) = 0.100710E+00 +PKER_SDRYG( 34, 54) = 0.922778E-01 +PKER_SDRYG( 34, 55) = 0.844206E-01 +PKER_SDRYG( 34, 56) = 0.771566E-01 +PKER_SDRYG( 34, 57) = 0.704841E-01 +PKER_SDRYG( 34, 58) = 0.643812E-01 +PKER_SDRYG( 34, 59) = 0.588101E-01 +PKER_SDRYG( 34, 60) = 0.537237E-01 +PKER_SDRYG( 34, 61) = 0.490721E-01 +PKER_SDRYG( 34, 62) = 0.448073E-01 +PKER_SDRYG( 34, 63) = 0.408857E-01 +PKER_SDRYG( 34, 64) = 0.372690E-01 +PKER_SDRYG( 34, 65) = 0.339245E-01 +PKER_SDRYG( 34, 66) = 0.308247E-01 +PKER_SDRYG( 34, 67) = 0.279467E-01 +PKER_SDRYG( 34, 68) = 0.252716E-01 +PKER_SDRYG( 34, 69) = 0.227841E-01 +PKER_SDRYG( 34, 70) = 0.204724E-01 +PKER_SDRYG( 34, 71) = 0.183278E-01 +PKER_SDRYG( 34, 72) = 0.163442E-01 +PKER_SDRYG( 34, 73) = 0.145187E-01 +PKER_SDRYG( 34, 74) = 0.128499E-01 +PKER_SDRYG( 34, 75) = 0.113397E-01 +PKER_SDRYG( 34, 76) = 0.998905E-02 +PKER_SDRYG( 34, 77) = 0.880025E-02 +PKER_SDRYG( 34, 78) = 0.777536E-02 +PKER_SDRYG( 34, 79) = 0.691458E-02 +PKER_SDRYG( 34, 80) = 0.621944E-02 +PKER_SDRYG( 35, 1) = 0.314831E+01 +PKER_SDRYG( 35, 2) = 0.295579E+01 +PKER_SDRYG( 35, 3) = 0.277503E+01 +PKER_SDRYG( 35, 4) = 0.260529E+01 +PKER_SDRYG( 35, 5) = 0.244591E+01 +PKER_SDRYG( 35, 6) = 0.229625E+01 +PKER_SDRYG( 35, 7) = 0.215573E+01 +PKER_SDRYG( 35, 8) = 0.202378E+01 +PKER_SDRYG( 35, 9) = 0.189988E+01 +PKER_SDRYG( 35, 10) = 0.178354E+01 +PKER_SDRYG( 35, 11) = 0.167430E+01 +PKER_SDRYG( 35, 12) = 0.157172E+01 +PKER_SDRYG( 35, 13) = 0.147540E+01 +PKER_SDRYG( 35, 14) = 0.138496E+01 +PKER_SDRYG( 35, 15) = 0.130004E+01 +PKER_SDRYG( 35, 16) = 0.122030E+01 +PKER_SDRYG( 35, 17) = 0.114542E+01 +PKER_SDRYG( 35, 18) = 0.107511E+01 +PKER_SDRYG( 35, 19) = 0.100909E+01 +PKER_SDRYG( 35, 20) = 0.947100E+00 +PKER_SDRYG( 35, 21) = 0.888890E+00 +PKER_SDRYG( 35, 22) = 0.834229E+00 +PKER_SDRYG( 35, 23) = 0.782902E+00 +PKER_SDRYG( 35, 24) = 0.734705E+00 +PKER_SDRYG( 35, 25) = 0.689447E+00 +PKER_SDRYG( 35, 26) = 0.646947E+00 +PKER_SDRYG( 35, 27) = 0.607038E+00 +PKER_SDRYG( 35, 28) = 0.569560E+00 +PKER_SDRYG( 35, 29) = 0.534364E+00 +PKER_SDRYG( 35, 30) = 0.501310E+00 +PKER_SDRYG( 35, 31) = 0.470267E+00 +PKER_SDRYG( 35, 32) = 0.441110E+00 +PKER_SDRYG( 35, 33) = 0.413722E+00 +PKER_SDRYG( 35, 34) = 0.387995E+00 +PKER_SDRYG( 35, 35) = 0.363825E+00 +PKER_SDRYG( 35, 36) = 0.341113E+00 +PKER_SDRYG( 35, 37) = 0.319768E+00 +PKER_SDRYG( 35, 38) = 0.299702E+00 +PKER_SDRYG( 35, 39) = 0.280832E+00 +PKER_SDRYG( 35, 40) = 0.263081E+00 +PKER_SDRYG( 35, 41) = 0.246372E+00 +PKER_SDRYG( 35, 42) = 0.230634E+00 +PKER_SDRYG( 35, 43) = 0.215798E+00 +PKER_SDRYG( 35, 44) = 0.201796E+00 +PKER_SDRYG( 35, 45) = 0.188564E+00 +PKER_SDRYG( 35, 46) = 0.176039E+00 +PKER_SDRYG( 35, 47) = 0.164162E+00 +PKER_SDRYG( 35, 48) = 0.152875E+00 +PKER_SDRYG( 35, 49) = 0.142127E+00 +PKER_SDRYG( 35, 50) = 0.131877E+00 +PKER_SDRYG( 35, 51) = 0.122094E+00 +PKER_SDRYG( 35, 52) = 0.112767E+00 +PKER_SDRYG( 35, 53) = 0.103898E+00 +PKER_SDRYG( 35, 54) = 0.955102E-01 +PKER_SDRYG( 35, 55) = 0.876322E-01 +PKER_SDRYG( 35, 56) = 0.802923E-01 +PKER_SDRYG( 35, 57) = 0.735065E-01 +PKER_SDRYG( 35, 58) = 0.672725E-01 +PKER_SDRYG( 35, 59) = 0.615692E-01 +PKER_SDRYG( 35, 60) = 0.563610E-01 +PKER_SDRYG( 35, 61) = 0.516040E-01 +PKER_SDRYG( 35, 62) = 0.472519E-01 +PKER_SDRYG( 35, 63) = 0.432599E-01 +PKER_SDRYG( 35, 64) = 0.395875E-01 +PKER_SDRYG( 35, 65) = 0.361991E-01 +PKER_SDRYG( 35, 66) = 0.330642E-01 +PKER_SDRYG( 35, 67) = 0.301570E-01 +PKER_SDRYG( 35, 68) = 0.274555E-01 +PKER_SDRYG( 35, 69) = 0.249416E-01 +PKER_SDRYG( 35, 70) = 0.226001E-01 +PKER_SDRYG( 35, 71) = 0.204182E-01 +PKER_SDRYG( 35, 72) = 0.183863E-01 +PKER_SDRYG( 35, 73) = 0.164969E-01 +PKER_SDRYG( 35, 74) = 0.147442E-01 +PKER_SDRYG( 35, 75) = 0.131255E-01 +PKER_SDRYG( 35, 76) = 0.116402E-01 +PKER_SDRYG( 35, 77) = 0.102875E-01 +PKER_SDRYG( 35, 78) = 0.906989E-02 +PKER_SDRYG( 35, 79) = 0.799132E-02 +PKER_SDRYG( 35, 80) = 0.704902E-02 +PKER_SDRYG( 36, 1) = 0.314929E+01 +PKER_SDRYG( 36, 2) = 0.295678E+01 +PKER_SDRYG( 36, 3) = 0.277601E+01 +PKER_SDRYG( 36, 4) = 0.260627E+01 +PKER_SDRYG( 36, 5) = 0.244689E+01 +PKER_SDRYG( 36, 6) = 0.229724E+01 +PKER_SDRYG( 36, 7) = 0.215671E+01 +PKER_SDRYG( 36, 8) = 0.202476E+01 +PKER_SDRYG( 36, 9) = 0.190086E+01 +PKER_SDRYG( 36, 10) = 0.178452E+01 +PKER_SDRYG( 36, 11) = 0.167528E+01 +PKER_SDRYG( 36, 12) = 0.157271E+01 +PKER_SDRYG( 36, 13) = 0.147639E+01 +PKER_SDRYG( 36, 14) = 0.138595E+01 +PKER_SDRYG( 36, 15) = 0.130103E+01 +PKER_SDRYG( 36, 16) = 0.122128E+01 +PKER_SDRYG( 36, 17) = 0.114641E+01 +PKER_SDRYG( 36, 18) = 0.107610E+01 +PKER_SDRYG( 36, 19) = 0.101008E+01 +PKER_SDRYG( 36, 20) = 0.948090E+00 +PKER_SDRYG( 36, 21) = 0.889880E+00 +PKER_SDRYG( 36, 22) = 0.835221E+00 +PKER_SDRYG( 36, 23) = 0.783896E+00 +PKER_SDRYG( 36, 24) = 0.735701E+00 +PKER_SDRYG( 36, 25) = 0.690445E+00 +PKER_SDRYG( 36, 26) = 0.647948E+00 +PKER_SDRYG( 36, 27) = 0.608042E+00 +PKER_SDRYG( 36, 28) = 0.570567E+00 +PKER_SDRYG( 36, 29) = 0.535376E+00 +PKER_SDRYG( 36, 30) = 0.502328E+00 +PKER_SDRYG( 36, 31) = 0.471291E+00 +PKER_SDRYG( 36, 32) = 0.442142E+00 +PKER_SDRYG( 36, 33) = 0.414765E+00 +PKER_SDRYG( 36, 34) = 0.389049E+00 +PKER_SDRYG( 36, 35) = 0.364893E+00 +PKER_SDRYG( 36, 36) = 0.342198E+00 +PKER_SDRYG( 36, 37) = 0.320873E+00 +PKER_SDRYG( 36, 38) = 0.300831E+00 +PKER_SDRYG( 36, 39) = 0.281991E+00 +PKER_SDRYG( 36, 40) = 0.264276E+00 +PKER_SDRYG( 36, 41) = 0.247610E+00 +PKER_SDRYG( 36, 42) = 0.231924E+00 +PKER_SDRYG( 36, 43) = 0.217150E+00 +PKER_SDRYG( 36, 44) = 0.203224E+00 +PKER_SDRYG( 36, 45) = 0.190084E+00 +PKER_SDRYG( 36, 46) = 0.177667E+00 +PKER_SDRYG( 36, 47) = 0.165917E+00 +PKER_SDRYG( 36, 48) = 0.154777E+00 +PKER_SDRYG( 36, 49) = 0.144194E+00 +PKER_SDRYG( 36, 50) = 0.134122E+00 +PKER_SDRYG( 36, 51) = 0.124519E+00 +PKER_SDRYG( 36, 52) = 0.115360E+00 +PKER_SDRYG( 36, 53) = 0.106630E+00 +PKER_SDRYG( 36, 54) = 0.983351E-01 +PKER_SDRYG( 36, 55) = 0.904924E-01 +PKER_SDRYG( 36, 56) = 0.831287E-01 +PKER_SDRYG( 36, 57) = 0.762689E-01 +PKER_SDRYG( 36, 58) = 0.699271E-01 +PKER_SDRYG( 36, 59) = 0.641001E-01 +PKER_SDRYG( 36, 60) = 0.587680E-01 +PKER_SDRYG( 36, 61) = 0.538972E-01 +PKER_SDRYG( 36, 62) = 0.494467E-01 +PKER_SDRYG( 36, 63) = 0.453735E-01 +PKER_SDRYG( 36, 64) = 0.416358E-01 +PKER_SDRYG( 36, 65) = 0.381961E-01 +PKER_SDRYG( 36, 66) = 0.350213E-01 +PKER_SDRYG( 36, 67) = 0.320830E-01 +PKER_SDRYG( 36, 68) = 0.293569E-01 +PKER_SDRYG( 36, 69) = 0.268227E-01 +PKER_SDRYG( 36, 70) = 0.244628E-01 +PKER_SDRYG( 36, 71) = 0.222628E-01 +PKER_SDRYG( 36, 72) = 0.202100E-01 +PKER_SDRYG( 36, 73) = 0.182942E-01 +PKER_SDRYG( 36, 74) = 0.165070E-01 +PKER_SDRYG( 36, 75) = 0.148415E-01 +PKER_SDRYG( 36, 76) = 0.132934E-01 +PKER_SDRYG( 36, 77) = 0.118592E-01 +PKER_SDRYG( 36, 78) = 0.105376E-01 +PKER_SDRYG( 36, 79) = 0.932874E-02 +PKER_SDRYG( 36, 80) = 0.823481E-02 +PKER_SDRYG( 37, 1) = 0.315013E+01 +PKER_SDRYG( 37, 2) = 0.295762E+01 +PKER_SDRYG( 37, 3) = 0.277685E+01 +PKER_SDRYG( 37, 4) = 0.260712E+01 +PKER_SDRYG( 37, 5) = 0.244774E+01 +PKER_SDRYG( 37, 6) = 0.229808E+01 +PKER_SDRYG( 37, 7) = 0.215756E+01 +PKER_SDRYG( 37, 8) = 0.202561E+01 +PKER_SDRYG( 37, 9) = 0.190171E+01 +PKER_SDRYG( 37, 10) = 0.178537E+01 +PKER_SDRYG( 37, 11) = 0.167613E+01 +PKER_SDRYG( 37, 12) = 0.157355E+01 +PKER_SDRYG( 37, 13) = 0.147723E+01 +PKER_SDRYG( 37, 14) = 0.138679E+01 +PKER_SDRYG( 37, 15) = 0.130187E+01 +PKER_SDRYG( 37, 16) = 0.122213E+01 +PKER_SDRYG( 37, 17) = 0.114725E+01 +PKER_SDRYG( 37, 18) = 0.107695E+01 +PKER_SDRYG( 37, 19) = 0.101093E+01 +PKER_SDRYG( 37, 20) = 0.948936E+00 +PKER_SDRYG( 37, 21) = 0.890727E+00 +PKER_SDRYG( 37, 22) = 0.836069E+00 +PKER_SDRYG( 37, 23) = 0.784745E+00 +PKER_SDRYG( 37, 24) = 0.736552E+00 +PKER_SDRYG( 37, 25) = 0.691298E+00 +PKER_SDRYG( 37, 26) = 0.648803E+00 +PKER_SDRYG( 37, 27) = 0.608899E+00 +PKER_SDRYG( 37, 28) = 0.571428E+00 +PKER_SDRYG( 37, 29) = 0.536240E+00 +PKER_SDRYG( 37, 30) = 0.503196E+00 +PKER_SDRYG( 37, 31) = 0.472165E+00 +PKER_SDRYG( 37, 32) = 0.443022E+00 +PKER_SDRYG( 37, 33) = 0.415652E+00 +PKER_SDRYG( 37, 34) = 0.389946E+00 +PKER_SDRYG( 37, 35) = 0.365800E+00 +PKER_SDRYG( 37, 36) = 0.343117E+00 +PKER_SDRYG( 37, 37) = 0.321808E+00 +PKER_SDRYG( 37, 38) = 0.301785E+00 +PKER_SDRYG( 37, 39) = 0.282968E+00 +PKER_SDRYG( 37, 40) = 0.265279E+00 +PKER_SDRYG( 37, 41) = 0.248646E+00 +PKER_SDRYG( 37, 42) = 0.232999E+00 +PKER_SDRYG( 37, 43) = 0.218273E+00 +PKER_SDRYG( 37, 44) = 0.204405E+00 +PKER_SDRYG( 37, 45) = 0.191333E+00 +PKER_SDRYG( 37, 46) = 0.179000E+00 +PKER_SDRYG( 37, 47) = 0.167348E+00 +PKER_SDRYG( 37, 48) = 0.156324E+00 +PKER_SDRYG( 37, 49) = 0.145874E+00 +PKER_SDRYG( 37, 50) = 0.135951E+00 +PKER_SDRYG( 37, 51) = 0.126509E+00 +PKER_SDRYG( 37, 52) = 0.117512E+00 +PKER_SDRYG( 37, 53) = 0.108934E+00 +PKER_SDRYG( 37, 54) = 0.100762E+00 +PKER_SDRYG( 37, 55) = 0.930002E-01 +PKER_SDRYG( 37, 56) = 0.856646E-01 +PKER_SDRYG( 37, 57) = 0.787788E-01 +PKER_SDRYG( 37, 58) = 0.723653E-01 +PKER_SDRYG( 37, 59) = 0.664358E-01 +PKER_SDRYG( 37, 60) = 0.609872E-01 +PKER_SDRYG( 37, 61) = 0.560001E-01 +PKER_SDRYG( 37, 62) = 0.514432E-01 +PKER_SDRYG( 37, 63) = 0.472782E-01 +PKER_SDRYG( 37, 64) = 0.434648E-01 +PKER_SDRYG( 37, 65) = 0.399644E-01 +PKER_SDRYG( 37, 66) = 0.367420E-01 +PKER_SDRYG( 37, 67) = 0.337668E-01 +PKER_SDRYG( 37, 68) = 0.310124E-01 +PKER_SDRYG( 37, 69) = 0.284563E-01 +PKER_SDRYG( 37, 70) = 0.260793E-01 +PKER_SDRYG( 37, 71) = 0.238651E-01 +PKER_SDRYG( 37, 72) = 0.217997E-01 +PKER_SDRYG( 37, 73) = 0.198713E-01 +PKER_SDRYG( 37, 74) = 0.180696E-01 +PKER_SDRYG( 37, 75) = 0.163859E-01 +PKER_SDRYG( 37, 76) = 0.148129E-01 +PKER_SDRYG( 37, 77) = 0.133450E-01 +PKER_SDRYG( 37, 78) = 0.119777E-01 +PKER_SDRYG( 37, 79) = 0.107079E-01 +PKER_SDRYG( 37, 80) = 0.953408E-02 +PKER_SDRYG( 38, 1) = 0.315085E+01 +PKER_SDRYG( 38, 2) = 0.295834E+01 +PKER_SDRYG( 38, 3) = 0.277757E+01 +PKER_SDRYG( 38, 4) = 0.260784E+01 +PKER_SDRYG( 38, 5) = 0.244846E+01 +PKER_SDRYG( 38, 6) = 0.229880E+01 +PKER_SDRYG( 38, 7) = 0.215828E+01 +PKER_SDRYG( 38, 8) = 0.202633E+01 +PKER_SDRYG( 38, 9) = 0.190243E+01 +PKER_SDRYG( 38, 10) = 0.178609E+01 +PKER_SDRYG( 38, 11) = 0.167685E+01 +PKER_SDRYG( 38, 12) = 0.157427E+01 +PKER_SDRYG( 38, 13) = 0.147795E+01 +PKER_SDRYG( 38, 14) = 0.138751E+01 +PKER_SDRYG( 38, 15) = 0.130259E+01 +PKER_SDRYG( 38, 16) = 0.122285E+01 +PKER_SDRYG( 38, 17) = 0.114798E+01 +PKER_SDRYG( 38, 18) = 0.107767E+01 +PKER_SDRYG( 38, 19) = 0.101165E+01 +PKER_SDRYG( 38, 20) = 0.949660E+00 +PKER_SDRYG( 38, 21) = 0.891452E+00 +PKER_SDRYG( 38, 22) = 0.836795E+00 +PKER_SDRYG( 38, 23) = 0.785472E+00 +PKER_SDRYG( 38, 24) = 0.737279E+00 +PKER_SDRYG( 38, 25) = 0.692026E+00 +PKER_SDRYG( 38, 26) = 0.649533E+00 +PKER_SDRYG( 38, 27) = 0.609632E+00 +PKER_SDRYG( 38, 28) = 0.572163E+00 +PKER_SDRYG( 38, 29) = 0.536978E+00 +PKER_SDRYG( 38, 30) = 0.503937E+00 +PKER_SDRYG( 38, 31) = 0.472910E+00 +PKER_SDRYG( 38, 32) = 0.443772E+00 +PKER_SDRYG( 38, 33) = 0.416408E+00 +PKER_SDRYG( 38, 34) = 0.390708E+00 +PKER_SDRYG( 38, 35) = 0.366570E+00 +PKER_SDRYG( 38, 36) = 0.343898E+00 +PKER_SDRYG( 38, 37) = 0.322600E+00 +PKER_SDRYG( 38, 38) = 0.302592E+00 +PKER_SDRYG( 38, 39) = 0.283791E+00 +PKER_SDRYG( 38, 40) = 0.266123E+00 +PKER_SDRYG( 38, 41) = 0.249515E+00 +PKER_SDRYG( 38, 42) = 0.233898E+00 +PKER_SDRYG( 38, 43) = 0.219208E+00 +PKER_SDRYG( 38, 44) = 0.205383E+00 +PKER_SDRYG( 38, 45) = 0.192364E+00 +PKER_SDRYG( 38, 46) = 0.180094E+00 +PKER_SDRYG( 38, 47) = 0.168518E+00 +PKER_SDRYG( 38, 48) = 0.157584E+00 +PKER_SDRYG( 38, 49) = 0.147240E+00 +PKER_SDRYG( 38, 50) = 0.137437E+00 +PKER_SDRYG( 38, 51) = 0.128131E+00 +PKER_SDRYG( 38, 52) = 0.119279E+00 +PKER_SDRYG( 38, 53) = 0.110847E+00 +PKER_SDRYG( 38, 54) = 0.102812E+00 +PKER_SDRYG( 38, 55) = 0.951603E-01 +PKER_SDRYG( 38, 56) = 0.878956E-01 +PKER_SDRYG( 38, 57) = 0.810320E-01 +PKER_SDRYG( 38, 58) = 0.745909E-01 +PKER_SDRYG( 38, 59) = 0.685921E-01 +PKER_SDRYG( 38, 60) = 0.630462E-01 +PKER_SDRYG( 38, 61) = 0.579494E-01 +PKER_SDRYG( 38, 62) = 0.532834E-01 +PKER_SDRYG( 38, 63) = 0.490188E-01 +PKER_SDRYG( 38, 64) = 0.451197E-01 +PKER_SDRYG( 38, 65) = 0.415486E-01 +PKER_SDRYG( 38, 66) = 0.382697E-01 +PKER_SDRYG( 38, 67) = 0.352502E-01 +PKER_SDRYG( 38, 68) = 0.324616E-01 +PKER_SDRYG( 38, 69) = 0.298793E-01 +PKER_SDRYG( 38, 70) = 0.274823E-01 +PKER_SDRYG( 38, 71) = 0.252528E-01 +PKER_SDRYG( 38, 72) = 0.231754E-01 +PKER_SDRYG( 38, 73) = 0.212373E-01 +PKER_SDRYG( 38, 74) = 0.194269E-01 +PKER_SDRYG( 38, 75) = 0.177345E-01 +PKER_SDRYG( 38, 76) = 0.161517E-01 +PKER_SDRYG( 38, 77) = 0.146709E-01 +PKER_SDRYG( 38, 78) = 0.132861E-01 +PKER_SDRYG( 38, 79) = 0.119920E-01 +PKER_SDRYG( 38, 80) = 0.107845E-01 +PKER_SDRYG( 39, 1) = 0.315147E+01 +PKER_SDRYG( 39, 2) = 0.295896E+01 +PKER_SDRYG( 39, 3) = 0.277819E+01 +PKER_SDRYG( 39, 4) = 0.260845E+01 +PKER_SDRYG( 39, 5) = 0.244907E+01 +PKER_SDRYG( 39, 6) = 0.229942E+01 +PKER_SDRYG( 39, 7) = 0.215889E+01 +PKER_SDRYG( 39, 8) = 0.202694E+01 +PKER_SDRYG( 39, 9) = 0.190304E+01 +PKER_SDRYG( 39, 10) = 0.178670E+01 +PKER_SDRYG( 39, 11) = 0.167746E+01 +PKER_SDRYG( 39, 12) = 0.157489E+01 +PKER_SDRYG( 39, 13) = 0.147857E+01 +PKER_SDRYG( 39, 14) = 0.138813E+01 +PKER_SDRYG( 39, 15) = 0.130321E+01 +PKER_SDRYG( 39, 16) = 0.122347E+01 +PKER_SDRYG( 39, 17) = 0.114859E+01 +PKER_SDRYG( 39, 18) = 0.107829E+01 +PKER_SDRYG( 39, 19) = 0.101227E+01 +PKER_SDRYG( 39, 20) = 0.950279E+00 +PKER_SDRYG( 39, 21) = 0.892072E+00 +PKER_SDRYG( 39, 22) = 0.837415E+00 +PKER_SDRYG( 39, 23) = 0.786093E+00 +PKER_SDRYG( 39, 24) = 0.737901E+00 +PKER_SDRYG( 39, 25) = 0.692649E+00 +PKER_SDRYG( 39, 26) = 0.650158E+00 +PKER_SDRYG( 39, 27) = 0.610257E+00 +PKER_SDRYG( 39, 28) = 0.572790E+00 +PKER_SDRYG( 39, 29) = 0.537608E+00 +PKER_SDRYG( 39, 30) = 0.504570E+00 +PKER_SDRYG( 39, 31) = 0.473545E+00 +PKER_SDRYG( 39, 32) = 0.444411E+00 +PKER_SDRYG( 39, 33) = 0.417051E+00 +PKER_SDRYG( 39, 34) = 0.391357E+00 +PKER_SDRYG( 39, 35) = 0.367225E+00 +PKER_SDRYG( 39, 36) = 0.344561E+00 +PKER_SDRYG( 39, 37) = 0.323272E+00 +PKER_SDRYG( 39, 38) = 0.303274E+00 +PKER_SDRYG( 39, 39) = 0.284487E+00 +PKER_SDRYG( 39, 40) = 0.266835E+00 +PKER_SDRYG( 39, 41) = 0.250245E+00 +PKER_SDRYG( 39, 42) = 0.234652E+00 +PKER_SDRYG( 39, 43) = 0.219989E+00 +PKER_SDRYG( 39, 44) = 0.206198E+00 +PKER_SDRYG( 39, 45) = 0.193218E+00 +PKER_SDRYG( 39, 46) = 0.180996E+00 +PKER_SDRYG( 39, 47) = 0.169478E+00 +PKER_SDRYG( 39, 48) = 0.158613E+00 +PKER_SDRYG( 39, 49) = 0.148351E+00 +PKER_SDRYG( 39, 50) = 0.138645E+00 +PKER_SDRYG( 39, 51) = 0.129448E+00 +PKER_SDRYG( 39, 52) = 0.120720E+00 +PKER_SDRYG( 39, 53) = 0.112420E+00 +PKER_SDRYG( 39, 54) = 0.104517E+00 +PKER_SDRYG( 39, 55) = 0.969883E-01 +PKER_SDRYG( 39, 56) = 0.898223E-01 +PKER_SDRYG( 39, 57) = 0.830208E-01 +PKER_SDRYG( 39, 58) = 0.765970E-01 +PKER_SDRYG( 39, 59) = 0.705698E-01 +PKER_SDRYG( 39, 60) = 0.649571E-01 +PKER_SDRYG( 39, 61) = 0.597681E-01 +PKER_SDRYG( 39, 62) = 0.549988E-01 +PKER_SDRYG( 39, 63) = 0.506318E-01 +PKER_SDRYG( 39, 64) = 0.466394E-01 +PKER_SDRYG( 39, 65) = 0.429883E-01 +PKER_SDRYG( 39, 66) = 0.396433E-01 +PKER_SDRYG( 39, 67) = 0.365711E-01 +PKER_SDRYG( 39, 68) = 0.337413E-01 +PKER_SDRYG( 39, 69) = 0.311271E-01 +PKER_SDRYG( 39, 70) = 0.287058E-01 +PKER_SDRYG( 39, 71) = 0.264578E-01 +PKER_SDRYG( 39, 72) = 0.243664E-01 +PKER_SDRYG( 39, 73) = 0.224176E-01 +PKER_SDRYG( 39, 74) = 0.205989E-01 +PKER_SDRYG( 39, 75) = 0.188998E-01 +PKER_SDRYG( 39, 76) = 0.173110E-01 +PKER_SDRYG( 39, 77) = 0.158243E-01 +PKER_SDRYG( 39, 78) = 0.144326E-01 +PKER_SDRYG( 39, 79) = 0.131297E-01 +PKER_SDRYG( 39, 80) = 0.119101E-01 +PKER_SDRYG( 40, 1) = 0.315200E+01 +PKER_SDRYG( 40, 2) = 0.295948E+01 +PKER_SDRYG( 40, 3) = 0.277872E+01 +PKER_SDRYG( 40, 4) = 0.260898E+01 +PKER_SDRYG( 40, 5) = 0.244960E+01 +PKER_SDRYG( 40, 6) = 0.229994E+01 +PKER_SDRYG( 40, 7) = 0.215942E+01 +PKER_SDRYG( 40, 8) = 0.202747E+01 +PKER_SDRYG( 40, 9) = 0.190357E+01 +PKER_SDRYG( 40, 10) = 0.178723E+01 +PKER_SDRYG( 40, 11) = 0.167799E+01 +PKER_SDRYG( 40, 12) = 0.157542E+01 +PKER_SDRYG( 40, 13) = 0.147910E+01 +PKER_SDRYG( 40, 14) = 0.138866E+01 +PKER_SDRYG( 40, 15) = 0.130374E+01 +PKER_SDRYG( 40, 16) = 0.122400E+01 +PKER_SDRYG( 40, 17) = 0.114912E+01 +PKER_SDRYG( 40, 18) = 0.107882E+01 +PKER_SDRYG( 40, 19) = 0.101280E+01 +PKER_SDRYG( 40, 20) = 0.950809E+00 +PKER_SDRYG( 40, 21) = 0.892602E+00 +PKER_SDRYG( 40, 22) = 0.837945E+00 +PKER_SDRYG( 40, 23) = 0.786624E+00 +PKER_SDRYG( 40, 24) = 0.738433E+00 +PKER_SDRYG( 40, 25) = 0.693182E+00 +PKER_SDRYG( 40, 26) = 0.650691E+00 +PKER_SDRYG( 40, 27) = 0.610792E+00 +PKER_SDRYG( 40, 28) = 0.573327E+00 +PKER_SDRYG( 40, 29) = 0.538146E+00 +PKER_SDRYG( 40, 30) = 0.505110E+00 +PKER_SDRYG( 40, 31) = 0.474088E+00 +PKER_SDRYG( 40, 32) = 0.444957E+00 +PKER_SDRYG( 40, 33) = 0.417600E+00 +PKER_SDRYG( 40, 34) = 0.391910E+00 +PKER_SDRYG( 40, 35) = 0.367783E+00 +PKER_SDRYG( 40, 36) = 0.345124E+00 +PKER_SDRYG( 40, 37) = 0.323843E+00 +PKER_SDRYG( 40, 38) = 0.303853E+00 +PKER_SDRYG( 40, 39) = 0.285076E+00 +PKER_SDRYG( 40, 40) = 0.267436E+00 +PKER_SDRYG( 40, 41) = 0.250861E+00 +PKER_SDRYG( 40, 42) = 0.235285E+00 +PKER_SDRYG( 40, 43) = 0.220643E+00 +PKER_SDRYG( 40, 44) = 0.206877E+00 +PKER_SDRYG( 40, 45) = 0.193928E+00 +PKER_SDRYG( 40, 46) = 0.181743E+00 +PKER_SDRYG( 40, 47) = 0.170269E+00 +PKER_SDRYG( 40, 48) = 0.159457E+00 +PKER_SDRYG( 40, 49) = 0.149258E+00 +PKER_SDRYG( 40, 50) = 0.139627E+00 +PKER_SDRYG( 40, 51) = 0.130518E+00 +PKER_SDRYG( 40, 52) = 0.121890E+00 +PKER_SDRYG( 40, 53) = 0.113703E+00 +PKER_SDRYG( 40, 54) = 0.105920E+00 +PKER_SDRYG( 40, 55) = 0.985112E-01 +PKER_SDRYG( 40, 56) = 0.914559E-01 +PKER_SDRYG( 40, 57) = 0.847430E-01 +PKER_SDRYG( 40, 58) = 0.783738E-01 +PKER_SDRYG( 40, 59) = 0.723597E-01 +PKER_SDRYG( 40, 60) = 0.667182E-01 +PKER_SDRYG( 40, 61) = 0.614651E-01 +PKER_SDRYG( 40, 62) = 0.566085E-01 +PKER_SDRYG( 40, 63) = 0.521442E-01 +PKER_SDRYG( 40, 64) = 0.480558E-01 +PKER_SDRYG( 40, 65) = 0.443173E-01 +PKER_SDRYG( 40, 66) = 0.408974E-01 +PKER_SDRYG( 40, 67) = 0.377635E-01 +PKER_SDRYG( 40, 68) = 0.348844E-01 +PKER_SDRYG( 40, 69) = 0.322318E-01 +PKER_SDRYG( 40, 70) = 0.297808E-01 +PKER_SDRYG( 40, 71) = 0.275102E-01 +PKER_SDRYG( 40, 72) = 0.254017E-01 +PKER_SDRYG( 40, 73) = 0.234398E-01 +PKER_SDRYG( 40, 74) = 0.216113E-01 +PKER_SDRYG( 40, 75) = 0.199047E-01 +PKER_SDRYG( 40, 76) = 0.183101E-01 +PKER_SDRYG( 40, 77) = 0.168188E-01 +PKER_SDRYG( 40, 78) = 0.154231E-01 +PKER_SDRYG( 40, 79) = 0.141161E-01 +PKER_SDRYG( 40, 80) = 0.128918E-01 +END IF +! +END SUBROUTINE LIMA_READ_XKER_SDRYG diff --git a/src/MNH/lima_read_xker_sweth.f90 b/src/MNH/lima_read_xker_sweth.f90 new file mode 100644 index 0000000000000000000000000000000000000000..cfc5ade58829a9e919fe2a2022f642ea52ef3320 --- /dev/null +++ b/src/MNH/lima_read_xker_sweth.f90 @@ -0,0 +1,3337 @@ +!MNH_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +!----------------------------------------------------------------- +!--------------- special set of characters for RCS information +!----------------------------------------------------------------- +! $Source$ $Revision$ +! MASDEV4_7 microph 2006/05/18 13:07:25 +!----------------------------------------------------------------- +! ########################### + MODULE MODI_LIMA_READ_XKER_SWETH +! ########################### +! +INTERFACE + SUBROUTINE LIMA_READ_XKER_SWETH (KWETLBDAH,KWETLBDAS,KND, & + PALPHAH,PNUH,PALPHAS,PNUS,PEHS,PBS,PCH,PDH,PCS,PDS, & + PWETLBDAH_MAX,PWETLBDAS_MAX,PWETLBDAH_MIN,PWETLBDAS_MIN, & + PFDINFTY,PKER_SWETH ) +! +INTEGER, INTENT(OUT) :: KND,KWETLBDAH,KWETLBDAS +REAL, INTENT(OUT) :: PALPHAH +REAL, INTENT(OUT) :: PNUH +REAL, INTENT(OUT) :: PALPHAS +REAL, INTENT(OUT) :: PNUS +REAL, INTENT(OUT) :: PEHS +REAL, INTENT(OUT) :: PBS +REAL, INTENT(OUT) :: PCH +REAL, INTENT(OUT) :: PDH +REAL, INTENT(OUT) :: PCS +REAL, INTENT(OUT) :: PDS +REAL, INTENT(OUT) :: PWETLBDAH_MAX +REAL, INTENT(OUT) :: PWETLBDAS_MAX +REAL, INTENT(OUT) :: PWETLBDAH_MIN +REAL, INTENT(OUT) :: PWETLBDAS_MIN +REAL, INTENT(OUT) :: PFDINFTY +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_SWETH +! +END SUBROUTINE LIMA_READ_XKER_SWETH +! +END INTERFACE +! +END MODULE MODI_LIMA_READ_XKER_SWETH +! ######################################################################## + SUBROUTINE LIMA_READ_XKER_SWETH (KWETLBDAH,KWETLBDAS,KND, & + PALPHAH,PNUH,PALPHAS,PNUS,PEHS,PBS,PCH,PDH,PCS,PDS, & + PWETLBDAH_MAX,PWETLBDAS_MAX,PWETLBDAH_MIN,PWETLBDAS_MIN, & + PFDINFTY,PKER_SWETH ) +! ######################################################################## +! +!!**** * * - initialize the kernels for the snow-hail wet growth process +!! +!! PURPOSE +!! ------- +!! The purpose of this routine is to initialize the kernels PKER_SWETH +!! prepared from a previous run of the routine INI_RAIN_ICE. The reading +!! of the kernels is optional after checking for the dimensions of the +!! arrays. +!! +!!** METHOD +!! ------ +!! +!! +!! EXTERNAL +!! -------- +!! None +!! +!! +!! IMPLICIT ARGUMENTS +!! ------------------ +!! None +!! +!! REFERENCE +!! --------- +!! Book2 of documentation ( routine READ_XKER_SWETH ) +!! +!! AUTHOR +!! ------ +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original 19/04/97 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +!* 0.2 Declarations of local variables : +! +! +INTEGER, INTENT(OUT) :: KND,KWETLBDAH,KWETLBDAS +REAL, INTENT(OUT) :: PALPHAH +REAL, INTENT(OUT) :: PNUH +REAL, INTENT(OUT) :: PALPHAS +REAL, INTENT(OUT) :: PNUS +REAL, INTENT(OUT) :: PEHS +REAL, INTENT(OUT) :: PBS +REAL, INTENT(OUT) :: PCH +REAL, INTENT(OUT) :: PDH +REAL, INTENT(OUT) :: PCS +REAL, INTENT(OUT) :: PDS +REAL, INTENT(OUT) :: PWETLBDAH_MAX +REAL, INTENT(OUT) :: PWETLBDAS_MAX +REAL, INTENT(OUT) :: PWETLBDAH_MIN +REAL, INTENT(OUT) :: PWETLBDAS_MIN +REAL, INTENT(OUT) :: PFDINFTY +REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_SWETH +! +! ######################################################################## +! #INSERT HERE THE OUTPUT OF INI_RAIN_ICE_HAIL IF THE KERNELS ARE UPDATED# +! ######################################################################## +! +KND= 50 +KWETLBDAH= 40 +KWETLBDAS= 80 +PALPHAH= 0.100000E+01 +PNUH= 0.800000E+01 +PALPHAS= 0.100000E+01 +PNUS= 0.100000E+01 +PEHS= 0.100000E+01 +PBS= 0.190000E+01 +PCH= 0.201000E+03 +PDH= 0.640000E+00 +PCS= 0.500000E+01 +PDS= 0.270000E+00 +PWETLBDAH_MAX= 0.100000E+08 +PWETLBDAS_MAX= 0.250000E+10 +PWETLBDAH_MIN= 0.100000E+04 +PWETLBDAS_MIN= 0.250000E+02 +PFDINFTY= 0.200000E+02 +! +IF( PRESENT(PKER_SWETH) ) THEN +PKER_SWETH( 1, 1) = 0.594408E+01 +PKER_SWETH( 1, 2) = 0.615804E+01 +PKER_SWETH( 1, 3) = 0.636519E+01 +PKER_SWETH( 1, 4) = 0.656714E+01 +PKER_SWETH( 1, 5) = 0.676556E+01 +PKER_SWETH( 1, 6) = 0.696207E+01 +PKER_SWETH( 1, 7) = 0.715814E+01 +PKER_SWETH( 1, 8) = 0.735491E+01 +PKER_SWETH( 1, 9) = 0.755300E+01 +PKER_SWETH( 1, 10) = 0.775225E+01 +PKER_SWETH( 1, 11) = 0.795159E+01 +PKER_SWETH( 1, 12) = 0.814900E+01 +PKER_SWETH( 1, 13) = 0.834171E+01 +PKER_SWETH( 1, 14) = 0.852662E+01 +PKER_SWETH( 1, 15) = 0.870080E+01 +PKER_SWETH( 1, 16) = 0.886196E+01 +PKER_SWETH( 1, 17) = 0.900870E+01 +PKER_SWETH( 1, 18) = 0.914061E+01 +PKER_SWETH( 1, 19) = 0.925806E+01 +PKER_SWETH( 1, 20) = 0.936202E+01 +PKER_SWETH( 1, 21) = 0.945377E+01 +PKER_SWETH( 1, 22) = 0.953473E+01 +PKER_SWETH( 1, 23) = 0.960629E+01 +PKER_SWETH( 1, 24) = 0.966973E+01 +PKER_SWETH( 1, 25) = 0.972622E+01 +PKER_SWETH( 1, 26) = 0.977674E+01 +PKER_SWETH( 1, 27) = 0.982214E+01 +PKER_SWETH( 1, 28) = 0.986313E+01 +PKER_SWETH( 1, 29) = 0.990032E+01 +PKER_SWETH( 1, 30) = 0.993419E+01 +PKER_SWETH( 1, 31) = 0.996517E+01 +PKER_SWETH( 1, 32) = 0.999360E+01 +PKER_SWETH( 1, 33) = 0.100198E+02 +PKER_SWETH( 1, 34) = 0.100439E+02 +PKER_SWETH( 1, 35) = 0.100663E+02 +PKER_SWETH( 1, 36) = 0.100870E+02 +PKER_SWETH( 1, 37) = 0.101063E+02 +PKER_SWETH( 1, 38) = 0.101243E+02 +PKER_SWETH( 1, 39) = 0.101410E+02 +PKER_SWETH( 1, 40) = 0.101566E+02 +PKER_SWETH( 1, 41) = 0.101711E+02 +PKER_SWETH( 1, 42) = 0.101847E+02 +PKER_SWETH( 1, 43) = 0.101975E+02 +PKER_SWETH( 1, 44) = 0.102094E+02 +PKER_SWETH( 1, 45) = 0.102206E+02 +PKER_SWETH( 1, 46) = 0.102310E+02 +PKER_SWETH( 1, 47) = 0.102408E+02 +PKER_SWETH( 1, 48) = 0.102500E+02 +PKER_SWETH( 1, 49) = 0.102586E+02 +PKER_SWETH( 1, 50) = 0.102667E+02 +PKER_SWETH( 1, 51) = 0.102743E+02 +PKER_SWETH( 1, 52) = 0.102814E+02 +PKER_SWETH( 1, 53) = 0.102880E+02 +PKER_SWETH( 1, 54) = 0.102943E+02 +PKER_SWETH( 1, 55) = 0.103002E+02 +PKER_SWETH( 1, 56) = 0.103057E+02 +PKER_SWETH( 1, 57) = 0.103108E+02 +PKER_SWETH( 1, 58) = 0.103157E+02 +PKER_SWETH( 1, 59) = 0.103203E+02 +PKER_SWETH( 1, 60) = 0.103245E+02 +PKER_SWETH( 1, 61) = 0.103286E+02 +PKER_SWETH( 1, 62) = 0.103323E+02 +PKER_SWETH( 1, 63) = 0.103359E+02 +PKER_SWETH( 1, 64) = 0.103392E+02 +PKER_SWETH( 1, 65) = 0.103423E+02 +PKER_SWETH( 1, 66) = 0.103453E+02 +PKER_SWETH( 1, 67) = 0.103480E+02 +PKER_SWETH( 1, 68) = 0.103506E+02 +PKER_SWETH( 1, 69) = 0.103530E+02 +PKER_SWETH( 1, 70) = 0.103553E+02 +PKER_SWETH( 1, 71) = 0.103574E+02 +PKER_SWETH( 1, 72) = 0.103595E+02 +PKER_SWETH( 1, 73) = 0.103613E+02 +PKER_SWETH( 1, 74) = 0.103631E+02 +PKER_SWETH( 1, 75) = 0.103648E+02 +PKER_SWETH( 1, 76) = 0.103663E+02 +PKER_SWETH( 1, 77) = 0.103678E+02 +PKER_SWETH( 1, 78) = 0.103692E+02 +PKER_SWETH( 1, 79) = 0.103705E+02 +PKER_SWETH( 1, 80) = 0.103717E+02 +PKER_SWETH( 2, 1) = 0.465456E+01 +PKER_SWETH( 2, 2) = 0.486187E+01 +PKER_SWETH( 2, 3) = 0.506117E+01 +PKER_SWETH( 2, 4) = 0.525380E+01 +PKER_SWETH( 2, 5) = 0.544116E+01 +PKER_SWETH( 2, 6) = 0.562472E+01 +PKER_SWETH( 2, 7) = 0.580594E+01 +PKER_SWETH( 2, 8) = 0.598611E+01 +PKER_SWETH( 2, 9) = 0.616626E+01 +PKER_SWETH( 2, 10) = 0.634695E+01 +PKER_SWETH( 2, 11) = 0.652809E+01 +PKER_SWETH( 2, 12) = 0.670877E+01 +PKER_SWETH( 2, 13) = 0.688725E+01 +PKER_SWETH( 2, 14) = 0.706117E+01 +PKER_SWETH( 2, 15) = 0.722787E+01 +PKER_SWETH( 2, 16) = 0.738481E+01 +PKER_SWETH( 2, 17) = 0.753004E+01 +PKER_SWETH( 2, 18) = 0.766237E+01 +PKER_SWETH( 2, 19) = 0.778146E+01 +PKER_SWETH( 2, 20) = 0.788768E+01 +PKER_SWETH( 2, 21) = 0.798187E+01 +PKER_SWETH( 2, 22) = 0.806519E+01 +PKER_SWETH( 2, 23) = 0.813889E+01 +PKER_SWETH( 2, 24) = 0.820419E+01 +PKER_SWETH( 2, 25) = 0.826224E+01 +PKER_SWETH( 2, 26) = 0.831405E+01 +PKER_SWETH( 2, 27) = 0.836050E+01 +PKER_SWETH( 2, 28) = 0.840234E+01 +PKER_SWETH( 2, 29) = 0.844021E+01 +PKER_SWETH( 2, 30) = 0.847462E+01 +PKER_SWETH( 2, 31) = 0.850603E+01 +PKER_SWETH( 2, 32) = 0.853480E+01 +PKER_SWETH( 2, 33) = 0.856125E+01 +PKER_SWETH( 2, 34) = 0.858563E+01 +PKER_SWETH( 2, 35) = 0.860816E+01 +PKER_SWETH( 2, 36) = 0.862904E+01 +PKER_SWETH( 2, 37) = 0.864841E+01 +PKER_SWETH( 2, 38) = 0.866643E+01 +PKER_SWETH( 2, 39) = 0.868321E+01 +PKER_SWETH( 2, 40) = 0.869886E+01 +PKER_SWETH( 2, 41) = 0.871346E+01 +PKER_SWETH( 2, 42) = 0.872711E+01 +PKER_SWETH( 2, 43) = 0.873987E+01 +PKER_SWETH( 2, 44) = 0.875180E+01 +PKER_SWETH( 2, 45) = 0.876298E+01 +PKER_SWETH( 2, 46) = 0.877344E+01 +PKER_SWETH( 2, 47) = 0.878325E+01 +PKER_SWETH( 2, 48) = 0.879244E+01 +PKER_SWETH( 2, 49) = 0.880106E+01 +PKER_SWETH( 2, 50) = 0.880914E+01 +PKER_SWETH( 2, 51) = 0.881672E+01 +PKER_SWETH( 2, 52) = 0.882383E+01 +PKER_SWETH( 2, 53) = 0.883050E+01 +PKER_SWETH( 2, 54) = 0.883676E+01 +PKER_SWETH( 2, 55) = 0.884263E+01 +PKER_SWETH( 2, 56) = 0.884815E+01 +PKER_SWETH( 2, 57) = 0.885332E+01 +PKER_SWETH( 2, 58) = 0.885818E+01 +PKER_SWETH( 2, 59) = 0.886274E+01 +PKER_SWETH( 2, 60) = 0.886702E+01 +PKER_SWETH( 2, 61) = 0.887104E+01 +PKER_SWETH( 2, 62) = 0.887482E+01 +PKER_SWETH( 2, 63) = 0.887836E+01 +PKER_SWETH( 2, 64) = 0.888169E+01 +PKER_SWETH( 2, 65) = 0.888481E+01 +PKER_SWETH( 2, 66) = 0.888774E+01 +PKER_SWETH( 2, 67) = 0.889049E+01 +PKER_SWETH( 2, 68) = 0.889308E+01 +PKER_SWETH( 2, 69) = 0.889551E+01 +PKER_SWETH( 2, 70) = 0.889778E+01 +PKER_SWETH( 2, 71) = 0.889992E+01 +PKER_SWETH( 2, 72) = 0.890193E+01 +PKER_SWETH( 2, 73) = 0.890382E+01 +PKER_SWETH( 2, 74) = 0.890559E+01 +PKER_SWETH( 2, 75) = 0.890725E+01 +PKER_SWETH( 2, 76) = 0.890882E+01 +PKER_SWETH( 2, 77) = 0.891028E+01 +PKER_SWETH( 2, 78) = 0.891166E+01 +PKER_SWETH( 2, 79) = 0.891295E+01 +PKER_SWETH( 2, 80) = 0.891417E+01 +PKER_SWETH( 3, 1) = 0.355241E+01 +PKER_SWETH( 3, 2) = 0.375388E+01 +PKER_SWETH( 3, 3) = 0.394699E+01 +PKER_SWETH( 3, 4) = 0.413258E+01 +PKER_SWETH( 3, 5) = 0.431174E+01 +PKER_SWETH( 3, 6) = 0.448568E+01 +PKER_SWETH( 3, 7) = 0.465567E+01 +PKER_SWETH( 3, 8) = 0.482298E+01 +PKER_SWETH( 3, 9) = 0.498877E+01 +PKER_SWETH( 3, 10) = 0.515397E+01 +PKER_SWETH( 3, 11) = 0.531908E+01 +PKER_SWETH( 3, 12) = 0.548405E+01 +PKER_SWETH( 3, 13) = 0.564811E+01 +PKER_SWETH( 3, 14) = 0.580980E+01 +PKER_SWETH( 3, 15) = 0.596707E+01 +PKER_SWETH( 3, 16) = 0.611763E+01 +PKER_SWETH( 3, 17) = 0.625931E+01 +PKER_SWETH( 3, 18) = 0.639043E+01 +PKER_SWETH( 3, 19) = 0.650999E+01 +PKER_SWETH( 3, 20) = 0.661772E+01 +PKER_SWETH( 3, 21) = 0.671394E+01 +PKER_SWETH( 3, 22) = 0.679944E+01 +PKER_SWETH( 3, 23) = 0.687523E+01 +PKER_SWETH( 3, 24) = 0.694243E+01 +PKER_SWETH( 3, 25) = 0.700212E+01 +PKER_SWETH( 3, 26) = 0.705531E+01 +PKER_SWETH( 3, 27) = 0.710290E+01 +PKER_SWETH( 3, 28) = 0.714567E+01 +PKER_SWETH( 3, 29) = 0.718428E+01 +PKER_SWETH( 3, 30) = 0.721929E+01 +PKER_SWETH( 3, 31) = 0.725118E+01 +PKER_SWETH( 3, 32) = 0.728033E+01 +PKER_SWETH( 3, 33) = 0.730707E+01 +PKER_SWETH( 3, 34) = 0.733169E+01 +PKER_SWETH( 3, 35) = 0.735440E+01 +PKER_SWETH( 3, 36) = 0.737543E+01 +PKER_SWETH( 3, 37) = 0.739492E+01 +PKER_SWETH( 3, 38) = 0.741303E+01 +PKER_SWETH( 3, 39) = 0.742988E+01 +PKER_SWETH( 3, 40) = 0.744559E+01 +PKER_SWETH( 3, 41) = 0.746023E+01 +PKER_SWETH( 3, 42) = 0.747391E+01 +PKER_SWETH( 3, 43) = 0.748670E+01 +PKER_SWETH( 3, 44) = 0.749866E+01 +PKER_SWETH( 3, 45) = 0.750985E+01 +PKER_SWETH( 3, 46) = 0.752033E+01 +PKER_SWETH( 3, 47) = 0.753014E+01 +PKER_SWETH( 3, 48) = 0.753934E+01 +PKER_SWETH( 3, 49) = 0.754797E+01 +PKER_SWETH( 3, 50) = 0.755605E+01 +PKER_SWETH( 3, 51) = 0.756364E+01 +PKER_SWETH( 3, 52) = 0.757075E+01 +PKER_SWETH( 3, 53) = 0.757742E+01 +PKER_SWETH( 3, 54) = 0.758369E+01 +PKER_SWETH( 3, 55) = 0.758956E+01 +PKER_SWETH( 3, 56) = 0.759508E+01 +PKER_SWETH( 3, 57) = 0.760025E+01 +PKER_SWETH( 3, 58) = 0.760511E+01 +PKER_SWETH( 3, 59) = 0.760967E+01 +PKER_SWETH( 3, 60) = 0.761396E+01 +PKER_SWETH( 3, 61) = 0.761798E+01 +PKER_SWETH( 3, 62) = 0.762175E+01 +PKER_SWETH( 3, 63) = 0.762529E+01 +PKER_SWETH( 3, 64) = 0.762862E+01 +PKER_SWETH( 3, 65) = 0.763174E+01 +PKER_SWETH( 3, 66) = 0.763467E+01 +PKER_SWETH( 3, 67) = 0.763743E+01 +PKER_SWETH( 3, 68) = 0.764001E+01 +PKER_SWETH( 3, 69) = 0.764244E+01 +PKER_SWETH( 3, 70) = 0.764472E+01 +PKER_SWETH( 3, 71) = 0.764686E+01 +PKER_SWETH( 3, 72) = 0.764887E+01 +PKER_SWETH( 3, 73) = 0.765075E+01 +PKER_SWETH( 3, 74) = 0.765253E+01 +PKER_SWETH( 3, 75) = 0.765419E+01 +PKER_SWETH( 3, 76) = 0.765575E+01 +PKER_SWETH( 3, 77) = 0.765722E+01 +PKER_SWETH( 3, 78) = 0.765859E+01 +PKER_SWETH( 3, 79) = 0.765989E+01 +PKER_SWETH( 3, 80) = 0.766110E+01 +PKER_SWETH( 4, 1) = 0.261585E+01 +PKER_SWETH( 4, 2) = 0.280948E+01 +PKER_SWETH( 4, 3) = 0.299603E+01 +PKER_SWETH( 4, 4) = 0.317539E+01 +PKER_SWETH( 4, 5) = 0.334799E+01 +PKER_SWETH( 4, 6) = 0.351456E+01 +PKER_SWETH( 4, 7) = 0.367607E+01 +PKER_SWETH( 4, 8) = 0.383360E+01 +PKER_SWETH( 4, 9) = 0.398823E+01 +PKER_SWETH( 4, 10) = 0.414100E+01 +PKER_SWETH( 4, 11) = 0.429270E+01 +PKER_SWETH( 4, 12) = 0.444383E+01 +PKER_SWETH( 4, 13) = 0.459433E+01 +PKER_SWETH( 4, 14) = 0.474359E+01 +PKER_SWETH( 4, 15) = 0.489033E+01 +PKER_SWETH( 4, 16) = 0.503281E+01 +PKER_SWETH( 4, 17) = 0.516906E+01 +PKER_SWETH( 4, 18) = 0.529721E+01 +PKER_SWETH( 4, 19) = 0.541582E+01 +PKER_SWETH( 4, 20) = 0.552404E+01 +PKER_SWETH( 4, 21) = 0.562165E+01 +PKER_SWETH( 4, 22) = 0.570898E+01 +PKER_SWETH( 4, 23) = 0.578673E+01 +PKER_SWETH( 4, 24) = 0.585579E+01 +PKER_SWETH( 4, 25) = 0.591716E+01 +PKER_SWETH( 4, 26) = 0.597181E+01 +PKER_SWETH( 4, 27) = 0.602062E+01 +PKER_SWETH( 4, 28) = 0.606439E+01 +PKER_SWETH( 4, 29) = 0.610382E+01 +PKER_SWETH( 4, 30) = 0.613949E+01 +PKER_SWETH( 4, 31) = 0.617190E+01 +PKER_SWETH( 4, 32) = 0.620147E+01 +PKER_SWETH( 4, 33) = 0.622855E+01 +PKER_SWETH( 4, 34) = 0.625342E+01 +PKER_SWETH( 4, 35) = 0.627635E+01 +PKER_SWETH( 4, 36) = 0.629753E+01 +PKER_SWETH( 4, 37) = 0.631716E+01 +PKER_SWETH( 4, 38) = 0.633537E+01 +PKER_SWETH( 4, 39) = 0.635230E+01 +PKER_SWETH( 4, 40) = 0.636806E+01 +PKER_SWETH( 4, 41) = 0.638276E+01 +PKER_SWETH( 4, 42) = 0.639648E+01 +PKER_SWETH( 4, 43) = 0.640930E+01 +PKER_SWETH( 4, 44) = 0.642128E+01 +PKER_SWETH( 4, 45) = 0.643249E+01 +PKER_SWETH( 4, 46) = 0.644298E+01 +PKER_SWETH( 4, 47) = 0.645281E+01 +PKER_SWETH( 4, 48) = 0.646202E+01 +PKER_SWETH( 4, 49) = 0.647065E+01 +PKER_SWETH( 4, 50) = 0.647874E+01 +PKER_SWETH( 4, 51) = 0.648633E+01 +PKER_SWETH( 4, 52) = 0.649345E+01 +PKER_SWETH( 4, 53) = 0.650012E+01 +PKER_SWETH( 4, 54) = 0.650639E+01 +PKER_SWETH( 4, 55) = 0.651227E+01 +PKER_SWETH( 4, 56) = 0.651778E+01 +PKER_SWETH( 4, 57) = 0.652296E+01 +PKER_SWETH( 4, 58) = 0.652782E+01 +PKER_SWETH( 4, 59) = 0.653238E+01 +PKER_SWETH( 4, 60) = 0.653666E+01 +PKER_SWETH( 4, 61) = 0.654068E+01 +PKER_SWETH( 4, 62) = 0.654446E+01 +PKER_SWETH( 4, 63) = 0.654800E+01 +PKER_SWETH( 4, 64) = 0.655133E+01 +PKER_SWETH( 4, 65) = 0.655445E+01 +PKER_SWETH( 4, 66) = 0.655738E+01 +PKER_SWETH( 4, 67) = 0.656014E+01 +PKER_SWETH( 4, 68) = 0.656272E+01 +PKER_SWETH( 4, 69) = 0.656515E+01 +PKER_SWETH( 4, 70) = 0.656743E+01 +PKER_SWETH( 4, 71) = 0.656957E+01 +PKER_SWETH( 4, 72) = 0.657158E+01 +PKER_SWETH( 4, 73) = 0.657346E+01 +PKER_SWETH( 4, 74) = 0.657524E+01 +PKER_SWETH( 4, 75) = 0.657690E+01 +PKER_SWETH( 4, 76) = 0.657846E+01 +PKER_SWETH( 4, 77) = 0.657993E+01 +PKER_SWETH( 4, 78) = 0.658130E+01 +PKER_SWETH( 4, 79) = 0.658260E+01 +PKER_SWETH( 4, 80) = 0.658381E+01 +PKER_SWETH( 5, 1) = 0.183666E+01 +PKER_SWETH( 5, 2) = 0.201461E+01 +PKER_SWETH( 5, 3) = 0.219011E+01 +PKER_SWETH( 5, 4) = 0.236116E+01 +PKER_SWETH( 5, 5) = 0.252677E+01 +PKER_SWETH( 5, 6) = 0.268674E+01 +PKER_SWETH( 5, 7) = 0.284137E+01 +PKER_SWETH( 5, 8) = 0.299127E+01 +PKER_SWETH( 5, 9) = 0.313728E+01 +PKER_SWETH( 5, 10) = 0.328031E+01 +PKER_SWETH( 5, 11) = 0.342122E+01 +PKER_SWETH( 5, 12) = 0.356074E+01 +PKER_SWETH( 5, 13) = 0.369927E+01 +PKER_SWETH( 5, 14) = 0.383682E+01 +PKER_SWETH( 5, 15) = 0.397284E+01 +PKER_SWETH( 5, 16) = 0.410626E+01 +PKER_SWETH( 5, 17) = 0.423559E+01 +PKER_SWETH( 5, 18) = 0.435911E+01 +PKER_SWETH( 5, 19) = 0.447524E+01 +PKER_SWETH( 5, 20) = 0.458272E+01 +PKER_SWETH( 5, 21) = 0.468086E+01 +PKER_SWETH( 5, 22) = 0.476948E+01 +PKER_SWETH( 5, 23) = 0.484888E+01 +PKER_SWETH( 5, 24) = 0.491969E+01 +PKER_SWETH( 5, 25) = 0.498273E+01 +PKER_SWETH( 5, 26) = 0.503887E+01 +PKER_SWETH( 5, 27) = 0.508897E+01 +PKER_SWETH( 5, 28) = 0.513382E+01 +PKER_SWETH( 5, 29) = 0.517414E+01 +PKER_SWETH( 5, 30) = 0.521054E+01 +PKER_SWETH( 5, 31) = 0.524353E+01 +PKER_SWETH( 5, 32) = 0.527356E+01 +PKER_SWETH( 5, 33) = 0.530100E+01 +PKER_SWETH( 5, 34) = 0.532617E+01 +PKER_SWETH( 5, 35) = 0.534933E+01 +PKER_SWETH( 5, 36) = 0.537069E+01 +PKER_SWETH( 5, 37) = 0.539046E+01 +PKER_SWETH( 5, 38) = 0.540878E+01 +PKER_SWETH( 5, 39) = 0.542580E+01 +PKER_SWETH( 5, 40) = 0.544164E+01 +PKER_SWETH( 5, 41) = 0.545639E+01 +PKER_SWETH( 5, 42) = 0.547015E+01 +PKER_SWETH( 5, 43) = 0.548300E+01 +PKER_SWETH( 5, 44) = 0.549501E+01 +PKER_SWETH( 5, 45) = 0.550624E+01 +PKER_SWETH( 5, 46) = 0.551675E+01 +PKER_SWETH( 5, 47) = 0.552659E+01 +PKER_SWETH( 5, 48) = 0.553581E+01 +PKER_SWETH( 5, 49) = 0.554445E+01 +PKER_SWETH( 5, 50) = 0.555254E+01 +PKER_SWETH( 5, 51) = 0.556014E+01 +PKER_SWETH( 5, 52) = 0.556726E+01 +PKER_SWETH( 5, 53) = 0.557394E+01 +PKER_SWETH( 5, 54) = 0.558021E+01 +PKER_SWETH( 5, 55) = 0.558609E+01 +PKER_SWETH( 5, 56) = 0.559160E+01 +PKER_SWETH( 5, 57) = 0.559678E+01 +PKER_SWETH( 5, 58) = 0.560164E+01 +PKER_SWETH( 5, 59) = 0.560621E+01 +PKER_SWETH( 5, 60) = 0.561049E+01 +PKER_SWETH( 5, 61) = 0.561451E+01 +PKER_SWETH( 5, 62) = 0.561829E+01 +PKER_SWETH( 5, 63) = 0.562183E+01 +PKER_SWETH( 5, 64) = 0.562516E+01 +PKER_SWETH( 5, 65) = 0.562828E+01 +PKER_SWETH( 5, 66) = 0.563121E+01 +PKER_SWETH( 5, 67) = 0.563396E+01 +PKER_SWETH( 5, 68) = 0.563655E+01 +PKER_SWETH( 5, 69) = 0.563898E+01 +PKER_SWETH( 5, 70) = 0.564126E+01 +PKER_SWETH( 5, 71) = 0.564340E+01 +PKER_SWETH( 5, 72) = 0.564540E+01 +PKER_SWETH( 5, 73) = 0.564729E+01 +PKER_SWETH( 5, 74) = 0.564906E+01 +PKER_SWETH( 5, 75) = 0.565073E+01 +PKER_SWETH( 5, 76) = 0.565229E+01 +PKER_SWETH( 5, 77) = 0.565375E+01 +PKER_SWETH( 5, 78) = 0.565513E+01 +PKER_SWETH( 5, 79) = 0.565642E+01 +PKER_SWETH( 5, 80) = 0.565764E+01 +PKER_SWETH( 6, 1) = 0.122732E+01 +PKER_SWETH( 6, 2) = 0.137201E+01 +PKER_SWETH( 6, 3) = 0.152420E+01 +PKER_SWETH( 6, 4) = 0.167900E+01 +PKER_SWETH( 6, 5) = 0.183306E+01 +PKER_SWETH( 6, 6) = 0.198423E+01 +PKER_SWETH( 6, 7) = 0.213147E+01 +PKER_SWETH( 6, 8) = 0.227444E+01 +PKER_SWETH( 6, 9) = 0.241330E+01 +PKER_SWETH( 6, 10) = 0.254856E+01 +PKER_SWETH( 6, 11) = 0.268088E+01 +PKER_SWETH( 6, 12) = 0.281097E+01 +PKER_SWETH( 6, 13) = 0.293942E+01 +PKER_SWETH( 6, 14) = 0.306659E+01 +PKER_SWETH( 6, 15) = 0.319250E+01 +PKER_SWETH( 6, 16) = 0.331667E+01 +PKER_SWETH( 6, 17) = 0.343821E+01 +PKER_SWETH( 6, 18) = 0.355580E+01 +PKER_SWETH( 6, 19) = 0.366800E+01 +PKER_SWETH( 6, 20) = 0.377342E+01 +PKER_SWETH( 6, 21) = 0.387101E+01 +PKER_SWETH( 6, 22) = 0.396016E+01 +PKER_SWETH( 6, 23) = 0.404075E+01 +PKER_SWETH( 6, 24) = 0.411307E+01 +PKER_SWETH( 6, 25) = 0.417768E+01 +PKER_SWETH( 6, 26) = 0.423531E+01 +PKER_SWETH( 6, 27) = 0.428674E+01 +PKER_SWETH( 6, 28) = 0.433274E+01 +PKER_SWETH( 6, 29) = 0.437401E+01 +PKER_SWETH( 6, 30) = 0.441119E+01 +PKER_SWETH( 6, 31) = 0.444482E+01 +PKER_SWETH( 6, 32) = 0.447537E+01 +PKER_SWETH( 6, 33) = 0.450322E+01 +PKER_SWETH( 6, 34) = 0.452871E+01 +PKER_SWETH( 6, 35) = 0.455213E+01 +PKER_SWETH( 6, 36) = 0.457369E+01 +PKER_SWETH( 6, 37) = 0.459362E+01 +PKER_SWETH( 6, 38) = 0.461207E+01 +PKER_SWETH( 6, 39) = 0.462919E+01 +PKER_SWETH( 6, 40) = 0.464510E+01 +PKER_SWETH( 6, 41) = 0.465991E+01 +PKER_SWETH( 6, 42) = 0.467372E+01 +PKER_SWETH( 6, 43) = 0.468661E+01 +PKER_SWETH( 6, 44) = 0.469865E+01 +PKER_SWETH( 6, 45) = 0.470990E+01 +PKER_SWETH( 6, 46) = 0.472043E+01 +PKER_SWETH( 6, 47) = 0.473028E+01 +PKER_SWETH( 6, 48) = 0.473951E+01 +PKER_SWETH( 6, 49) = 0.474816E+01 +PKER_SWETH( 6, 50) = 0.475627E+01 +PKER_SWETH( 6, 51) = 0.476387E+01 +PKER_SWETH( 6, 52) = 0.477099E+01 +PKER_SWETH( 6, 53) = 0.477767E+01 +PKER_SWETH( 6, 54) = 0.478394E+01 +PKER_SWETH( 6, 55) = 0.478983E+01 +PKER_SWETH( 6, 56) = 0.479535E+01 +PKER_SWETH( 6, 57) = 0.480053E+01 +PKER_SWETH( 6, 58) = 0.480539E+01 +PKER_SWETH( 6, 59) = 0.480995E+01 +PKER_SWETH( 6, 60) = 0.481424E+01 +PKER_SWETH( 6, 61) = 0.481826E+01 +PKER_SWETH( 6, 62) = 0.482203E+01 +PKER_SWETH( 6, 63) = 0.482557E+01 +PKER_SWETH( 6, 64) = 0.482890E+01 +PKER_SWETH( 6, 65) = 0.483203E+01 +PKER_SWETH( 6, 66) = 0.483496E+01 +PKER_SWETH( 6, 67) = 0.483771E+01 +PKER_SWETH( 6, 68) = 0.484030E+01 +PKER_SWETH( 6, 69) = 0.484272E+01 +PKER_SWETH( 6, 70) = 0.484500E+01 +PKER_SWETH( 6, 71) = 0.484714E+01 +PKER_SWETH( 6, 72) = 0.484915E+01 +PKER_SWETH( 6, 73) = 0.485104E+01 +PKER_SWETH( 6, 74) = 0.485281E+01 +PKER_SWETH( 6, 75) = 0.485447E+01 +PKER_SWETH( 6, 76) = 0.485604E+01 +PKER_SWETH( 6, 77) = 0.485750E+01 +PKER_SWETH( 6, 78) = 0.485888E+01 +PKER_SWETH( 6, 79) = 0.486017E+01 +PKER_SWETH( 6, 80) = 0.486139E+01 +PKER_SWETH( 7, 1) = 0.820900E+00 +PKER_SWETH( 7, 2) = 0.905506E+00 +PKER_SWETH( 7, 3) = 0.101233E+01 +PKER_SWETH( 7, 4) = 0.113395E+01 +PKER_SWETH( 7, 5) = 0.126438E+01 +PKER_SWETH( 7, 6) = 0.139888E+01 +PKER_SWETH( 7, 7) = 0.153405E+01 +PKER_SWETH( 7, 8) = 0.166779E+01 +PKER_SWETH( 7, 9) = 0.179891E+01 +PKER_SWETH( 7, 10) = 0.192695E+01 +PKER_SWETH( 7, 11) = 0.205196E+01 +PKER_SWETH( 7, 12) = 0.217429E+01 +PKER_SWETH( 7, 13) = 0.229440E+01 +PKER_SWETH( 7, 14) = 0.241276E+01 +PKER_SWETH( 7, 15) = 0.252965E+01 +PKER_SWETH( 7, 16) = 0.264507E+01 +PKER_SWETH( 7, 17) = 0.275862E+01 +PKER_SWETH( 7, 18) = 0.286951E+01 +PKER_SWETH( 7, 19) = 0.297663E+01 +PKER_SWETH( 7, 20) = 0.307872E+01 +PKER_SWETH( 7, 21) = 0.317460E+01 +PKER_SWETH( 7, 22) = 0.326335E+01 +PKER_SWETH( 7, 23) = 0.334449E+01 +PKER_SWETH( 7, 24) = 0.341791E+01 +PKER_SWETH( 7, 25) = 0.348388E+01 +PKER_SWETH( 7, 26) = 0.354293E+01 +PKER_SWETH( 7, 27) = 0.359570E+01 +PKER_SWETH( 7, 28) = 0.364289E+01 +PKER_SWETH( 7, 29) = 0.368518E+01 +PKER_SWETH( 7, 30) = 0.372321E+01 +PKER_SWETH( 7, 31) = 0.375754E+01 +PKER_SWETH( 7, 32) = 0.378865E+01 +PKER_SWETH( 7, 33) = 0.381696E+01 +PKER_SWETH( 7, 34) = 0.384281E+01 +PKER_SWETH( 7, 35) = 0.386651E+01 +PKER_SWETH( 7, 36) = 0.388831E+01 +PKER_SWETH( 7, 37) = 0.390841E+01 +PKER_SWETH( 7, 38) = 0.392700E+01 +PKER_SWETH( 7, 39) = 0.394423E+01 +PKER_SWETH( 7, 40) = 0.396023E+01 +PKER_SWETH( 7, 41) = 0.397511E+01 +PKER_SWETH( 7, 42) = 0.398897E+01 +PKER_SWETH( 7, 43) = 0.400190E+01 +PKER_SWETH( 7, 44) = 0.401397E+01 +PKER_SWETH( 7, 45) = 0.402525E+01 +PKER_SWETH( 7, 46) = 0.403580E+01 +PKER_SWETH( 7, 47) = 0.404567E+01 +PKER_SWETH( 7, 48) = 0.405491E+01 +PKER_SWETH( 7, 49) = 0.406357E+01 +PKER_SWETH( 7, 50) = 0.407168E+01 +PKER_SWETH( 7, 51) = 0.407929E+01 +PKER_SWETH( 7, 52) = 0.408642E+01 +PKER_SWETH( 7, 53) = 0.409310E+01 +PKER_SWETH( 7, 54) = 0.409938E+01 +PKER_SWETH( 7, 55) = 0.410526E+01 +PKER_SWETH( 7, 56) = 0.411078E+01 +PKER_SWETH( 7, 57) = 0.411596E+01 +PKER_SWETH( 7, 58) = 0.412083E+01 +PKER_SWETH( 7, 59) = 0.412539E+01 +PKER_SWETH( 7, 60) = 0.412968E+01 +PKER_SWETH( 7, 61) = 0.413370E+01 +PKER_SWETH( 7, 62) = 0.413747E+01 +PKER_SWETH( 7, 63) = 0.414102E+01 +PKER_SWETH( 7, 64) = 0.414434E+01 +PKER_SWETH( 7, 65) = 0.414747E+01 +PKER_SWETH( 7, 66) = 0.415040E+01 +PKER_SWETH( 7, 67) = 0.415315E+01 +PKER_SWETH( 7, 68) = 0.415574E+01 +PKER_SWETH( 7, 69) = 0.415817E+01 +PKER_SWETH( 7, 70) = 0.416045E+01 +PKER_SWETH( 7, 71) = 0.416259E+01 +PKER_SWETH( 7, 72) = 0.416460E+01 +PKER_SWETH( 7, 73) = 0.416648E+01 +PKER_SWETH( 7, 74) = 0.416825E+01 +PKER_SWETH( 7, 75) = 0.416992E+01 +PKER_SWETH( 7, 76) = 0.417148E+01 +PKER_SWETH( 7, 77) = 0.417294E+01 +PKER_SWETH( 7, 78) = 0.417432E+01 +PKER_SWETH( 7, 79) = 0.417561E+01 +PKER_SWETH( 7, 80) = 0.417683E+01 +PKER_SWETH( 8, 1) = 0.649351E+00 +PKER_SWETH( 8, 2) = 0.650011E+00 +PKER_SWETH( 8, 3) = 0.685517E+00 +PKER_SWETH( 8, 4) = 0.749664E+00 +PKER_SWETH( 8, 5) = 0.835874E+00 +PKER_SWETH( 8, 6) = 0.937419E+00 +PKER_SWETH( 8, 7) = 0.104881E+01 +PKER_SWETH( 8, 8) = 0.116549E+01 +PKER_SWETH( 8, 9) = 0.128413E+01 +PKER_SWETH( 8, 10) = 0.140255E+01 +PKER_SWETH( 8, 11) = 0.151951E+01 +PKER_SWETH( 8, 12) = 0.163444E+01 +PKER_SWETH( 8, 13) = 0.174722E+01 +PKER_SWETH( 8, 14) = 0.185802E+01 +PKER_SWETH( 8, 15) = 0.196710E+01 +PKER_SWETH( 8, 16) = 0.207463E+01 +PKER_SWETH( 8, 17) = 0.218056E+01 +PKER_SWETH( 8, 18) = 0.228455E+01 +PKER_SWETH( 8, 19) = 0.238589E+01 +PKER_SWETH( 8, 20) = 0.248364E+01 +PKER_SWETH( 8, 21) = 0.257669E+01 +PKER_SWETH( 8, 22) = 0.266404E+01 +PKER_SWETH( 8, 23) = 0.274491E+01 +PKER_SWETH( 8, 24) = 0.281887E+01 +PKER_SWETH( 8, 25) = 0.288587E+01 +PKER_SWETH( 8, 26) = 0.294616E+01 +PKER_SWETH( 8, 27) = 0.300021E+01 +PKER_SWETH( 8, 28) = 0.304860E+01 +PKER_SWETH( 8, 29) = 0.309196E+01 +PKER_SWETH( 8, 30) = 0.313090E+01 +PKER_SWETH( 8, 31) = 0.316598E+01 +PKER_SWETH( 8, 32) = 0.319771E+01 +PKER_SWETH( 8, 33) = 0.322652E+01 +PKER_SWETH( 8, 34) = 0.325278E+01 +PKER_SWETH( 8, 35) = 0.327680E+01 +PKER_SWETH( 8, 36) = 0.329884E+01 +PKER_SWETH( 8, 37) = 0.331915E+01 +PKER_SWETH( 8, 38) = 0.333789E+01 +PKER_SWETH( 8, 39) = 0.335525E+01 +PKER_SWETH( 8, 40) = 0.337134E+01 +PKER_SWETH( 8, 41) = 0.338630E+01 +PKER_SWETH( 8, 42) = 0.340022E+01 +PKER_SWETH( 8, 43) = 0.341320E+01 +PKER_SWETH( 8, 44) = 0.342530E+01 +PKER_SWETH( 8, 45) = 0.343661E+01 +PKER_SWETH( 8, 46) = 0.344718E+01 +PKER_SWETH( 8, 47) = 0.345707E+01 +PKER_SWETH( 8, 48) = 0.346633E+01 +PKER_SWETH( 8, 49) = 0.347500E+01 +PKER_SWETH( 8, 50) = 0.348312E+01 +PKER_SWETH( 8, 51) = 0.349073E+01 +PKER_SWETH( 8, 52) = 0.349787E+01 +PKER_SWETH( 8, 53) = 0.350456E+01 +PKER_SWETH( 8, 54) = 0.351083E+01 +PKER_SWETH( 8, 55) = 0.351672E+01 +PKER_SWETH( 8, 56) = 0.352224E+01 +PKER_SWETH( 8, 57) = 0.352743E+01 +PKER_SWETH( 8, 58) = 0.353229E+01 +PKER_SWETH( 8, 59) = 0.353686E+01 +PKER_SWETH( 8, 60) = 0.354114E+01 +PKER_SWETH( 8, 61) = 0.354516E+01 +PKER_SWETH( 8, 62) = 0.354894E+01 +PKER_SWETH( 8, 63) = 0.355249E+01 +PKER_SWETH( 8, 64) = 0.355581E+01 +PKER_SWETH( 8, 65) = 0.355894E+01 +PKER_SWETH( 8, 66) = 0.356187E+01 +PKER_SWETH( 8, 67) = 0.356462E+01 +PKER_SWETH( 8, 68) = 0.356721E+01 +PKER_SWETH( 8, 69) = 0.356964E+01 +PKER_SWETH( 8, 70) = 0.357192E+01 +PKER_SWETH( 8, 71) = 0.357406E+01 +PKER_SWETH( 8, 72) = 0.357606E+01 +PKER_SWETH( 8, 73) = 0.357795E+01 +PKER_SWETH( 8, 74) = 0.357972E+01 +PKER_SWETH( 8, 75) = 0.358139E+01 +PKER_SWETH( 8, 76) = 0.358295E+01 +PKER_SWETH( 8, 77) = 0.358441E+01 +PKER_SWETH( 8, 78) = 0.358579E+01 +PKER_SWETH( 8, 79) = 0.358708E+01 +PKER_SWETH( 8, 80) = 0.358830E+01 +PKER_SWETH( 9, 1) = 0.702519E+00 +PKER_SWETH( 9, 2) = 0.616447E+00 +PKER_SWETH( 9, 3) = 0.568133E+00 +PKER_SWETH( 9, 4) = 0.555691E+00 +PKER_SWETH( 9, 5) = 0.575613E+00 +PKER_SWETH( 9, 6) = 0.622847E+00 +PKER_SWETH( 9, 7) = 0.691366E+00 +PKER_SWETH( 9, 8) = 0.775606E+00 +PKER_SWETH( 9, 9) = 0.870423E+00 +PKER_SWETH( 9, 10) = 0.971456E+00 +PKER_SWETH( 9, 11) = 0.107560E+01 +PKER_SWETH( 9, 12) = 0.118058E+01 +PKER_SWETH( 9, 13) = 0.128511E+01 +PKER_SWETH( 9, 14) = 0.138846E+01 +PKER_SWETH( 9, 15) = 0.149035E+01 +PKER_SWETH( 9, 16) = 0.159076E+01 +PKER_SWETH( 9, 17) = 0.168968E+01 +PKER_SWETH( 9, 18) = 0.178699E+01 +PKER_SWETH( 9, 19) = 0.188233E+01 +PKER_SWETH( 9, 20) = 0.197509E+01 +PKER_SWETH( 9, 21) = 0.206443E+01 +PKER_SWETH( 9, 22) = 0.214939E+01 +PKER_SWETH( 9, 23) = 0.222911E+01 +PKER_SWETH( 9, 24) = 0.230291E+01 +PKER_SWETH( 9, 25) = 0.237045E+01 +PKER_SWETH( 9, 26) = 0.243169E+01 +PKER_SWETH( 9, 27) = 0.248687E+01 +PKER_SWETH( 9, 28) = 0.253642E+01 +PKER_SWETH( 9, 29) = 0.258086E+01 +PKER_SWETH( 9, 30) = 0.262075E+01 +PKER_SWETH( 9, 31) = 0.265665E+01 +PKER_SWETH( 9, 32) = 0.268906E+01 +PKER_SWETH( 9, 33) = 0.271842E+01 +PKER_SWETH( 9, 34) = 0.274512E+01 +PKER_SWETH( 9, 35) = 0.276950E+01 +PKER_SWETH( 9, 36) = 0.279183E+01 +PKER_SWETH( 9, 37) = 0.281235E+01 +PKER_SWETH( 9, 38) = 0.283128E+01 +PKER_SWETH( 9, 39) = 0.284877E+01 +PKER_SWETH( 9, 40) = 0.286497E+01 +PKER_SWETH( 9, 41) = 0.288002E+01 +PKER_SWETH( 9, 42) = 0.289400E+01 +PKER_SWETH( 9, 43) = 0.290703E+01 +PKER_SWETH( 9, 44) = 0.291918E+01 +PKER_SWETH( 9, 45) = 0.293052E+01 +PKER_SWETH( 9, 46) = 0.294112E+01 +PKER_SWETH( 9, 47) = 0.295103E+01 +PKER_SWETH( 9, 48) = 0.296030E+01 +PKER_SWETH( 9, 49) = 0.296898E+01 +PKER_SWETH( 9, 50) = 0.297711E+01 +PKER_SWETH( 9, 51) = 0.298473E+01 +PKER_SWETH( 9, 52) = 0.299187E+01 +PKER_SWETH( 9, 53) = 0.299857E+01 +PKER_SWETH( 9, 54) = 0.300485E+01 +PKER_SWETH( 9, 55) = 0.301074E+01 +PKER_SWETH( 9, 56) = 0.301626E+01 +PKER_SWETH( 9, 57) = 0.302145E+01 +PKER_SWETH( 9, 58) = 0.302631E+01 +PKER_SWETH( 9, 59) = 0.303088E+01 +PKER_SWETH( 9, 60) = 0.303517E+01 +PKER_SWETH( 9, 61) = 0.303919E+01 +PKER_SWETH( 9, 62) = 0.304297E+01 +PKER_SWETH( 9, 63) = 0.304651E+01 +PKER_SWETH( 9, 64) = 0.304984E+01 +PKER_SWETH( 9, 65) = 0.305296E+01 +PKER_SWETH( 9, 66) = 0.305590E+01 +PKER_SWETH( 9, 67) = 0.305865E+01 +PKER_SWETH( 9, 68) = 0.306124E+01 +PKER_SWETH( 9, 69) = 0.306366E+01 +PKER_SWETH( 9, 70) = 0.306594E+01 +PKER_SWETH( 9, 71) = 0.306808E+01 +PKER_SWETH( 9, 72) = 0.307009E+01 +PKER_SWETH( 9, 73) = 0.307198E+01 +PKER_SWETH( 9, 74) = 0.307375E+01 +PKER_SWETH( 9, 75) = 0.307541E+01 +PKER_SWETH( 9, 76) = 0.307697E+01 +PKER_SWETH( 9, 77) = 0.307844E+01 +PKER_SWETH( 9, 78) = 0.307982E+01 +PKER_SWETH( 9, 79) = 0.308111E+01 +PKER_SWETH( 9, 80) = 0.308233E+01 +PKER_SWETH( 10, 1) = 0.910019E+00 +PKER_SWETH( 10, 2) = 0.761058E+00 +PKER_SWETH( 10, 3) = 0.642166E+00 +PKER_SWETH( 10, 4) = 0.555322E+00 +PKER_SWETH( 10, 5) = 0.501395E+00 +PKER_SWETH( 10, 6) = 0.479375E+00 +PKER_SWETH( 10, 7) = 0.486799E+00 +PKER_SWETH( 10, 8) = 0.519678E+00 +PKER_SWETH( 10, 9) = 0.573342E+00 +PKER_SWETH( 10, 10) = 0.642647E+00 +PKER_SWETH( 10, 11) = 0.723043E+00 +PKER_SWETH( 10, 12) = 0.810494E+00 +PKER_SWETH( 10, 13) = 0.901923E+00 +PKER_SWETH( 10, 14) = 0.995138E+00 +PKER_SWETH( 10, 15) = 0.108870E+01 +PKER_SWETH( 10, 16) = 0.118176E+01 +PKER_SWETH( 10, 17) = 0.127386E+01 +PKER_SWETH( 10, 18) = 0.136474E+01 +PKER_SWETH( 10, 19) = 0.145412E+01 +PKER_SWETH( 10, 20) = 0.154161E+01 +PKER_SWETH( 10, 21) = 0.162661E+01 +PKER_SWETH( 10, 22) = 0.170837E+01 +PKER_SWETH( 10, 23) = 0.178607E+01 +PKER_SWETH( 10, 24) = 0.185894E+01 +PKER_SWETH( 10, 25) = 0.192641E+01 +PKER_SWETH( 10, 26) = 0.198818E+01 +PKER_SWETH( 10, 27) = 0.204425E+01 +PKER_SWETH( 10, 28) = 0.209483E+01 +PKER_SWETH( 10, 29) = 0.214031E+01 +PKER_SWETH( 10, 30) = 0.218118E+01 +PKER_SWETH( 10, 31) = 0.221794E+01 +PKER_SWETH( 10, 32) = 0.225107E+01 +PKER_SWETH( 10, 33) = 0.228104E+01 +PKER_SWETH( 10, 34) = 0.230823E+01 +PKER_SWETH( 10, 35) = 0.233301E+01 +PKER_SWETH( 10, 36) = 0.235566E+01 +PKER_SWETH( 10, 37) = 0.237643E+01 +PKER_SWETH( 10, 38) = 0.239556E+01 +PKER_SWETH( 10, 39) = 0.241320E+01 +PKER_SWETH( 10, 40) = 0.242953E+01 +PKER_SWETH( 10, 41) = 0.244467E+01 +PKER_SWETH( 10, 42) = 0.245873E+01 +PKER_SWETH( 10, 43) = 0.247182E+01 +PKER_SWETH( 10, 44) = 0.248402E+01 +PKER_SWETH( 10, 45) = 0.249539E+01 +PKER_SWETH( 10, 46) = 0.250602E+01 +PKER_SWETH( 10, 47) = 0.251595E+01 +PKER_SWETH( 10, 48) = 0.252524E+01 +PKER_SWETH( 10, 49) = 0.253393E+01 +PKER_SWETH( 10, 50) = 0.254208E+01 +PKER_SWETH( 10, 51) = 0.254970E+01 +PKER_SWETH( 10, 52) = 0.255685E+01 +PKER_SWETH( 10, 53) = 0.256355E+01 +PKER_SWETH( 10, 54) = 0.256983E+01 +PKER_SWETH( 10, 55) = 0.257573E+01 +PKER_SWETH( 10, 56) = 0.258126E+01 +PKER_SWETH( 10, 57) = 0.258644E+01 +PKER_SWETH( 10, 58) = 0.259131E+01 +PKER_SWETH( 10, 59) = 0.259588E+01 +PKER_SWETH( 10, 60) = 0.260017E+01 +PKER_SWETH( 10, 61) = 0.260419E+01 +PKER_SWETH( 10, 62) = 0.260797E+01 +PKER_SWETH( 10, 63) = 0.261151E+01 +PKER_SWETH( 10, 64) = 0.261484E+01 +PKER_SWETH( 10, 65) = 0.261796E+01 +PKER_SWETH( 10, 66) = 0.262090E+01 +PKER_SWETH( 10, 67) = 0.262365E+01 +PKER_SWETH( 10, 68) = 0.262624E+01 +PKER_SWETH( 10, 69) = 0.262866E+01 +PKER_SWETH( 10, 70) = 0.263094E+01 +PKER_SWETH( 10, 71) = 0.263308E+01 +PKER_SWETH( 10, 72) = 0.263509E+01 +PKER_SWETH( 10, 73) = 0.263698E+01 +PKER_SWETH( 10, 74) = 0.263875E+01 +PKER_SWETH( 10, 75) = 0.264042E+01 +PKER_SWETH( 10, 76) = 0.264198E+01 +PKER_SWETH( 10, 77) = 0.264344E+01 +PKER_SWETH( 10, 78) = 0.264482E+01 +PKER_SWETH( 10, 79) = 0.264611E+01 +PKER_SWETH( 10, 80) = 0.264733E+01 +PKER_SWETH( 11, 1) = 0.117970E+01 +PKER_SWETH( 11, 2) = 0.999555E+00 +PKER_SWETH( 11, 3) = 0.839382E+00 +PKER_SWETH( 11, 4) = 0.701679E+00 +PKER_SWETH( 11, 5) = 0.588986E+00 +PKER_SWETH( 11, 6) = 0.503339E+00 +PKER_SWETH( 11, 7) = 0.446069E+00 +PKER_SWETH( 11, 8) = 0.417187E+00 +PKER_SWETH( 11, 9) = 0.414688E+00 +PKER_SWETH( 11, 10) = 0.436027E+00 +PKER_SWETH( 11, 11) = 0.477087E+00 +PKER_SWETH( 11, 12) = 0.533660E+00 +PKER_SWETH( 11, 13) = 0.601609E+00 +PKER_SWETH( 11, 14) = 0.677240E+00 +PKER_SWETH( 11, 15) = 0.757583E+00 +PKER_SWETH( 11, 16) = 0.840432E+00 +PKER_SWETH( 11, 17) = 0.924274E+00 +PKER_SWETH( 11, 18) = 0.100809E+01 +PKER_SWETH( 11, 19) = 0.109125E+01 +PKER_SWETH( 11, 20) = 0.117322E+01 +PKER_SWETH( 11, 21) = 0.125348E+01 +PKER_SWETH( 11, 22) = 0.133144E+01 +PKER_SWETH( 11, 23) = 0.140636E+01 +PKER_SWETH( 11, 24) = 0.147751E+01 +PKER_SWETH( 11, 25) = 0.154422E+01 +PKER_SWETH( 11, 26) = 0.160600E+01 +PKER_SWETH( 11, 27) = 0.166258E+01 +PKER_SWETH( 11, 28) = 0.171399E+01 +PKER_SWETH( 11, 29) = 0.176042E+01 +PKER_SWETH( 11, 30) = 0.180224E+01 +PKER_SWETH( 11, 31) = 0.183988E+01 +PKER_SWETH( 11, 32) = 0.187378E+01 +PKER_SWETH( 11, 33) = 0.190440E+01 +PKER_SWETH( 11, 34) = 0.193214E+01 +PKER_SWETH( 11, 35) = 0.195735E+01 +PKER_SWETH( 11, 36) = 0.198036E+01 +PKER_SWETH( 11, 37) = 0.200142E+01 +PKER_SWETH( 11, 38) = 0.202076E+01 +PKER_SWETH( 11, 39) = 0.203859E+01 +PKER_SWETH( 11, 40) = 0.205505E+01 +PKER_SWETH( 11, 41) = 0.207030E+01 +PKER_SWETH( 11, 42) = 0.208445E+01 +PKER_SWETH( 11, 43) = 0.209760E+01 +PKER_SWETH( 11, 44) = 0.210985E+01 +PKER_SWETH( 11, 45) = 0.212127E+01 +PKER_SWETH( 11, 46) = 0.213193E+01 +PKER_SWETH( 11, 47) = 0.214188E+01 +PKER_SWETH( 11, 48) = 0.215119E+01 +PKER_SWETH( 11, 49) = 0.215990E+01 +PKER_SWETH( 11, 50) = 0.216805E+01 +PKER_SWETH( 11, 51) = 0.217569E+01 +PKER_SWETH( 11, 52) = 0.218285E+01 +PKER_SWETH( 11, 53) = 0.218955E+01 +PKER_SWETH( 11, 54) = 0.219584E+01 +PKER_SWETH( 11, 55) = 0.220174E+01 +PKER_SWETH( 11, 56) = 0.220727E+01 +PKER_SWETH( 11, 57) = 0.221246E+01 +PKER_SWETH( 11, 58) = 0.221733E+01 +PKER_SWETH( 11, 59) = 0.222190E+01 +PKER_SWETH( 11, 60) = 0.222618E+01 +PKER_SWETH( 11, 61) = 0.223021E+01 +PKER_SWETH( 11, 62) = 0.223399E+01 +PKER_SWETH( 11, 63) = 0.223753E+01 +PKER_SWETH( 11, 64) = 0.224086E+01 +PKER_SWETH( 11, 65) = 0.224399E+01 +PKER_SWETH( 11, 66) = 0.224692E+01 +PKER_SWETH( 11, 67) = 0.224967E+01 +PKER_SWETH( 11, 68) = 0.225226E+01 +PKER_SWETH( 11, 69) = 0.225469E+01 +PKER_SWETH( 11, 70) = 0.225697E+01 +PKER_SWETH( 11, 71) = 0.225911E+01 +PKER_SWETH( 11, 72) = 0.226112E+01 +PKER_SWETH( 11, 73) = 0.226300E+01 +PKER_SWETH( 11, 74) = 0.226477E+01 +PKER_SWETH( 11, 75) = 0.226644E+01 +PKER_SWETH( 11, 76) = 0.226800E+01 +PKER_SWETH( 11, 77) = 0.226947E+01 +PKER_SWETH( 11, 78) = 0.227084E+01 +PKER_SWETH( 11, 79) = 0.227214E+01 +PKER_SWETH( 11, 80) = 0.227335E+01 +PKER_SWETH( 12, 1) = 0.144652E+01 +PKER_SWETH( 12, 2) = 0.125611E+01 +PKER_SWETH( 12, 3) = 0.107975E+01 +PKER_SWETH( 12, 4) = 0.918380E+00 +PKER_SWETH( 12, 5) = 0.773485E+00 +PKER_SWETH( 12, 6) = 0.647036E+00 +PKER_SWETH( 12, 7) = 0.541359E+00 +PKER_SWETH( 12, 8) = 0.458510E+00 +PKER_SWETH( 12, 9) = 0.399890E+00 +PKER_SWETH( 12, 10) = 0.366094E+00 +PKER_SWETH( 12, 11) = 0.356301E+00 +PKER_SWETH( 12, 12) = 0.368080E+00 +PKER_SWETH( 12, 13) = 0.398694E+00 +PKER_SWETH( 12, 14) = 0.444471E+00 +PKER_SWETH( 12, 15) = 0.501775E+00 +PKER_SWETH( 12, 16) = 0.567143E+00 +PKER_SWETH( 12, 17) = 0.637796E+00 +PKER_SWETH( 12, 18) = 0.711513E+00 +PKER_SWETH( 12, 19) = 0.786658E+00 +PKER_SWETH( 12, 20) = 0.862084E+00 +PKER_SWETH( 12, 21) = 0.936916E+00 +PKER_SWETH( 12, 22) = 0.101042E+01 +PKER_SWETH( 12, 23) = 0.108188E+01 +PKER_SWETH( 12, 24) = 0.115058E+01 +PKER_SWETH( 12, 25) = 0.121581E+01 +PKER_SWETH( 12, 26) = 0.127697E+01 +PKER_SWETH( 12, 27) = 0.133361E+01 +PKER_SWETH( 12, 28) = 0.138552E+01 +PKER_SWETH( 12, 29) = 0.143272E+01 +PKER_SWETH( 12, 30) = 0.147541E+01 +PKER_SWETH( 12, 31) = 0.151391E+01 +PKER_SWETH( 12, 32) = 0.154861E+01 +PKER_SWETH( 12, 33) = 0.157992E+01 +PKER_SWETH( 12, 34) = 0.160825E+01 +PKER_SWETH( 12, 35) = 0.163395E+01 +PKER_SWETH( 12, 36) = 0.165735E+01 +PKER_SWETH( 12, 37) = 0.167873E+01 +PKER_SWETH( 12, 38) = 0.169832E+01 +PKER_SWETH( 12, 39) = 0.171635E+01 +PKER_SWETH( 12, 40) = 0.173297E+01 +PKER_SWETH( 12, 41) = 0.174834E+01 +PKER_SWETH( 12, 42) = 0.176259E+01 +PKER_SWETH( 12, 43) = 0.177582E+01 +PKER_SWETH( 12, 44) = 0.178812E+01 +PKER_SWETH( 12, 45) = 0.179959E+01 +PKER_SWETH( 12, 46) = 0.181028E+01 +PKER_SWETH( 12, 47) = 0.182026E+01 +PKER_SWETH( 12, 48) = 0.182960E+01 +PKER_SWETH( 12, 49) = 0.183832E+01 +PKER_SWETH( 12, 50) = 0.184649E+01 +PKER_SWETH( 12, 51) = 0.185414E+01 +PKER_SWETH( 12, 52) = 0.186130E+01 +PKER_SWETH( 12, 53) = 0.186801E+01 +PKER_SWETH( 12, 54) = 0.187430E+01 +PKER_SWETH( 12, 55) = 0.188021E+01 +PKER_SWETH( 12, 56) = 0.188574E+01 +PKER_SWETH( 12, 57) = 0.189093E+01 +PKER_SWETH( 12, 58) = 0.189580E+01 +PKER_SWETH( 12, 59) = 0.190037E+01 +PKER_SWETH( 12, 60) = 0.190466E+01 +PKER_SWETH( 12, 61) = 0.190869E+01 +PKER_SWETH( 12, 62) = 0.191247E+01 +PKER_SWETH( 12, 63) = 0.191601E+01 +PKER_SWETH( 12, 64) = 0.191934E+01 +PKER_SWETH( 12, 65) = 0.192247E+01 +PKER_SWETH( 12, 66) = 0.192540E+01 +PKER_SWETH( 12, 67) = 0.192815E+01 +PKER_SWETH( 12, 68) = 0.193074E+01 +PKER_SWETH( 12, 69) = 0.193317E+01 +PKER_SWETH( 12, 70) = 0.193545E+01 +PKER_SWETH( 12, 71) = 0.193759E+01 +PKER_SWETH( 12, 72) = 0.193960E+01 +PKER_SWETH( 12, 73) = 0.194149E+01 +PKER_SWETH( 12, 74) = 0.194326E+01 +PKER_SWETH( 12, 75) = 0.194492E+01 +PKER_SWETH( 12, 76) = 0.194648E+01 +PKER_SWETH( 12, 77) = 0.194795E+01 +PKER_SWETH( 12, 78) = 0.194933E+01 +PKER_SWETH( 12, 79) = 0.195062E+01 +PKER_SWETH( 12, 80) = 0.195183E+01 +PKER_SWETH( 13, 1) = 0.168479E+01 +PKER_SWETH( 13, 2) = 0.149223E+01 +PKER_SWETH( 13, 3) = 0.131178E+01 +PKER_SWETH( 13, 4) = 0.114318E+01 +PKER_SWETH( 13, 5) = 0.986502E+00 +PKER_SWETH( 13, 6) = 0.842330E+00 +PKER_SWETH( 13, 7) = 0.711777E+00 +PKER_SWETH( 13, 8) = 0.596438E+00 +PKER_SWETH( 13, 9) = 0.498240E+00 +PKER_SWETH( 13, 10) = 0.419186E+00 +PKER_SWETH( 13, 11) = 0.360884E+00 +PKER_SWETH( 13, 12) = 0.324082E+00 +PKER_SWETH( 13, 13) = 0.308477E+00 +PKER_SWETH( 13, 14) = 0.312993E+00 +PKER_SWETH( 13, 15) = 0.335025E+00 +PKER_SWETH( 13, 16) = 0.371680E+00 +PKER_SWETH( 13, 17) = 0.419845E+00 +PKER_SWETH( 13, 18) = 0.476331E+00 +PKER_SWETH( 13, 19) = 0.538496E+00 +PKER_SWETH( 13, 20) = 0.604102E+00 +PKER_SWETH( 13, 21) = 0.671400E+00 +PKER_SWETH( 13, 22) = 0.739062E+00 +PKER_SWETH( 13, 23) = 0.806033E+00 +PKER_SWETH( 13, 24) = 0.871408E+00 +PKER_SWETH( 13, 25) = 0.934369E+00 +PKER_SWETH( 13, 26) = 0.994201E+00 +PKER_SWETH( 13, 27) = 0.105032E+01 +PKER_SWETH( 13, 28) = 0.110232E+01 +PKER_SWETH( 13, 29) = 0.115001E+01 +PKER_SWETH( 13, 30) = 0.119341E+01 +PKER_SWETH( 13, 31) = 0.123271E+01 +PKER_SWETH( 13, 32) = 0.126820E+01 +PKER_SWETH( 13, 33) = 0.130023E+01 +PKER_SWETH( 13, 34) = 0.132918E+01 +PKER_SWETH( 13, 35) = 0.135541E+01 +PKER_SWETH( 13, 36) = 0.137925E+01 +PKER_SWETH( 13, 37) = 0.140098E+01 +PKER_SWETH( 13, 38) = 0.142086E+01 +PKER_SWETH( 13, 39) = 0.143911E+01 +PKER_SWETH( 13, 40) = 0.145591E+01 +PKER_SWETH( 13, 41) = 0.147142E+01 +PKER_SWETH( 13, 42) = 0.148578E+01 +PKER_SWETH( 13, 43) = 0.149910E+01 +PKER_SWETH( 13, 44) = 0.151147E+01 +PKER_SWETH( 13, 45) = 0.152298E+01 +PKER_SWETH( 13, 46) = 0.153372E+01 +PKER_SWETH( 13, 47) = 0.154373E+01 +PKER_SWETH( 13, 48) = 0.155309E+01 +PKER_SWETH( 13, 49) = 0.156184E+01 +PKER_SWETH( 13, 50) = 0.157002E+01 +PKER_SWETH( 13, 51) = 0.157768E+01 +PKER_SWETH( 13, 52) = 0.158485E+01 +PKER_SWETH( 13, 53) = 0.159157E+01 +PKER_SWETH( 13, 54) = 0.159787E+01 +PKER_SWETH( 13, 55) = 0.160377E+01 +PKER_SWETH( 13, 56) = 0.160931E+01 +PKER_SWETH( 13, 57) = 0.161451E+01 +PKER_SWETH( 13, 58) = 0.161938E+01 +PKER_SWETH( 13, 59) = 0.162395E+01 +PKER_SWETH( 13, 60) = 0.162824E+01 +PKER_SWETH( 13, 61) = 0.163227E+01 +PKER_SWETH( 13, 62) = 0.163605E+01 +PKER_SWETH( 13, 63) = 0.163959E+01 +PKER_SWETH( 13, 64) = 0.164292E+01 +PKER_SWETH( 13, 65) = 0.164605E+01 +PKER_SWETH( 13, 66) = 0.164898E+01 +PKER_SWETH( 13, 67) = 0.165174E+01 +PKER_SWETH( 13, 68) = 0.165432E+01 +PKER_SWETH( 13, 69) = 0.165675E+01 +PKER_SWETH( 13, 70) = 0.165903E+01 +PKER_SWETH( 13, 71) = 0.166117E+01 +PKER_SWETH( 13, 72) = 0.166318E+01 +PKER_SWETH( 13, 73) = 0.166507E+01 +PKER_SWETH( 13, 74) = 0.166684E+01 +PKER_SWETH( 13, 75) = 0.166850E+01 +PKER_SWETH( 13, 76) = 0.167007E+01 +PKER_SWETH( 13, 77) = 0.167153E+01 +PKER_SWETH( 13, 78) = 0.167291E+01 +PKER_SWETH( 13, 79) = 0.167420E+01 +PKER_SWETH( 13, 80) = 0.167542E+01 +PKER_SWETH( 14, 1) = 0.189106E+01 +PKER_SWETH( 14, 2) = 0.169828E+01 +PKER_SWETH( 14, 3) = 0.151724E+01 +PKER_SWETH( 14, 4) = 0.134728E+01 +PKER_SWETH( 14, 5) = 0.118787E+01 +PKER_SWETH( 14, 6) = 0.103869E+01 +PKER_SWETH( 14, 7) = 0.899664E+00 +PKER_SWETH( 14, 8) = 0.771152E+00 +PKER_SWETH( 14, 9) = 0.653915E+00 +PKER_SWETH( 14, 10) = 0.549229E+00 +PKER_SWETH( 14, 11) = 0.458726E+00 +PKER_SWETH( 14, 12) = 0.384162E+00 +PKER_SWETH( 14, 13) = 0.327214E+00 +PKER_SWETH( 14, 14) = 0.288898E+00 +PKER_SWETH( 14, 15) = 0.269417E+00 +PKER_SWETH( 14, 16) = 0.268018E+00 +PKER_SWETH( 14, 17) = 0.283099E+00 +PKER_SWETH( 14, 18) = 0.312281E+00 +PKER_SWETH( 14, 19) = 0.352665E+00 +PKER_SWETH( 14, 20) = 0.401510E+00 +PKER_SWETH( 14, 21) = 0.456229E+00 +PKER_SWETH( 14, 22) = 0.514536E+00 +PKER_SWETH( 14, 23) = 0.574635E+00 +PKER_SWETH( 14, 24) = 0.635018E+00 +PKER_SWETH( 14, 25) = 0.694493E+00 +PKER_SWETH( 14, 26) = 0.752055E+00 +PKER_SWETH( 14, 27) = 0.806900E+00 +PKER_SWETH( 14, 28) = 0.858415E+00 +PKER_SWETH( 14, 29) = 0.906197E+00 +PKER_SWETH( 14, 30) = 0.950060E+00 +PKER_SWETH( 14, 31) = 0.990018E+00 +PKER_SWETH( 14, 32) = 0.102624E+01 +PKER_SWETH( 14, 33) = 0.105899E+01 +PKER_SWETH( 14, 34) = 0.108860E+01 +PKER_SWETH( 14, 35) = 0.111540E+01 +PKER_SWETH( 14, 36) = 0.113971E+01 +PKER_SWETH( 14, 37) = 0.116183E+01 +PKER_SWETH( 14, 38) = 0.118203E+01 +PKER_SWETH( 14, 39) = 0.120054E+01 +PKER_SWETH( 14, 40) = 0.121754E+01 +PKER_SWETH( 14, 41) = 0.123321E+01 +PKER_SWETH( 14, 42) = 0.124769E+01 +PKER_SWETH( 14, 43) = 0.126111E+01 +PKER_SWETH( 14, 44) = 0.127356E+01 +PKER_SWETH( 14, 45) = 0.128513E+01 +PKER_SWETH( 14, 46) = 0.129591E+01 +PKER_SWETH( 14, 47) = 0.130596E+01 +PKER_SWETH( 14, 48) = 0.131535E+01 +PKER_SWETH( 14, 49) = 0.132412E+01 +PKER_SWETH( 14, 50) = 0.133232E+01 +PKER_SWETH( 14, 51) = 0.133999E+01 +PKER_SWETH( 14, 52) = 0.134717E+01 +PKER_SWETH( 14, 53) = 0.135390E+01 +PKER_SWETH( 14, 54) = 0.136020E+01 +PKER_SWETH( 14, 55) = 0.136611E+01 +PKER_SWETH( 14, 56) = 0.137166E+01 +PKER_SWETH( 14, 57) = 0.137685E+01 +PKER_SWETH( 14, 58) = 0.138173E+01 +PKER_SWETH( 14, 59) = 0.138630E+01 +PKER_SWETH( 14, 60) = 0.139059E+01 +PKER_SWETH( 14, 61) = 0.139462E+01 +PKER_SWETH( 14, 62) = 0.139840E+01 +PKER_SWETH( 14, 63) = 0.140195E+01 +PKER_SWETH( 14, 64) = 0.140528E+01 +PKER_SWETH( 14, 65) = 0.140841E+01 +PKER_SWETH( 14, 66) = 0.141134E+01 +PKER_SWETH( 14, 67) = 0.141410E+01 +PKER_SWETH( 14, 68) = 0.141668E+01 +PKER_SWETH( 14, 69) = 0.141911E+01 +PKER_SWETH( 14, 70) = 0.142139E+01 +PKER_SWETH( 14, 71) = 0.142353E+01 +PKER_SWETH( 14, 72) = 0.142554E+01 +PKER_SWETH( 14, 73) = 0.142743E+01 +PKER_SWETH( 14, 74) = 0.142920E+01 +PKER_SWETH( 14, 75) = 0.143086E+01 +PKER_SWETH( 14, 76) = 0.143242E+01 +PKER_SWETH( 14, 77) = 0.143389E+01 +PKER_SWETH( 14, 78) = 0.143527E+01 +PKER_SWETH( 14, 79) = 0.143656E+01 +PKER_SWETH( 14, 80) = 0.143777E+01 +PKER_SWETH( 15, 1) = 0.206851E+01 +PKER_SWETH( 15, 2) = 0.187578E+01 +PKER_SWETH( 15, 3) = 0.169474E+01 +PKER_SWETH( 15, 4) = 0.152469E+01 +PKER_SWETH( 15, 5) = 0.136497E+01 +PKER_SWETH( 15, 6) = 0.121496E+01 +PKER_SWETH( 15, 7) = 0.107417E+01 +PKER_SWETH( 15, 8) = 0.942229E+00 +PKER_SWETH( 15, 9) = 0.818993E+00 +PKER_SWETH( 15, 10) = 0.704619E+00 +PKER_SWETH( 15, 11) = 0.599635E+00 +PKER_SWETH( 15, 12) = 0.505012E+00 +PKER_SWETH( 15, 13) = 0.422101E+00 +PKER_SWETH( 15, 14) = 0.352467E+00 +PKER_SWETH( 15, 15) = 0.297703E+00 +PKER_SWETH( 15, 16) = 0.258998E+00 +PKER_SWETH( 15, 17) = 0.236959E+00 +PKER_SWETH( 15, 18) = 0.231267E+00 +PKER_SWETH( 15, 19) = 0.240828E+00 +PKER_SWETH( 15, 20) = 0.263715E+00 +PKER_SWETH( 15, 21) = 0.297593E+00 +PKER_SWETH( 15, 22) = 0.339817E+00 +PKER_SWETH( 15, 23) = 0.387934E+00 +PKER_SWETH( 15, 24) = 0.439655E+00 +PKER_SWETH( 15, 25) = 0.493057E+00 +PKER_SWETH( 15, 26) = 0.546554E+00 +PKER_SWETH( 15, 27) = 0.598863E+00 +PKER_SWETH( 15, 28) = 0.648998E+00 +PKER_SWETH( 15, 29) = 0.696248E+00 +PKER_SWETH( 15, 30) = 0.740165E+00 +PKER_SWETH( 15, 31) = 0.780538E+00 +PKER_SWETH( 15, 32) = 0.817363E+00 +PKER_SWETH( 15, 33) = 0.850785E+00 +PKER_SWETH( 15, 34) = 0.881046E+00 +PKER_SWETH( 15, 35) = 0.908438E+00 +PKER_SWETH( 15, 36) = 0.933267E+00 +PKER_SWETH( 15, 37) = 0.955825E+00 +PKER_SWETH( 15, 38) = 0.976380E+00 +PKER_SWETH( 15, 39) = 0.995170E+00 +PKER_SWETH( 15, 40) = 0.101240E+01 +PKER_SWETH( 15, 41) = 0.102825E+01 +PKER_SWETH( 15, 42) = 0.104288E+01 +PKER_SWETH( 15, 43) = 0.105640E+01 +PKER_SWETH( 15, 44) = 0.106894E+01 +PKER_SWETH( 15, 45) = 0.108059E+01 +PKER_SWETH( 15, 46) = 0.109142E+01 +PKER_SWETH( 15, 47) = 0.110151E+01 +PKER_SWETH( 15, 48) = 0.111093E+01 +PKER_SWETH( 15, 49) = 0.111972E+01 +PKER_SWETH( 15, 50) = 0.112794E+01 +PKER_SWETH( 15, 51) = 0.113563E+01 +PKER_SWETH( 15, 52) = 0.114282E+01 +PKER_SWETH( 15, 53) = 0.114956E+01 +PKER_SWETH( 15, 54) = 0.115587E+01 +PKER_SWETH( 15, 55) = 0.116179E+01 +PKER_SWETH( 15, 56) = 0.116733E+01 +PKER_SWETH( 15, 57) = 0.117253E+01 +PKER_SWETH( 15, 58) = 0.117741E+01 +PKER_SWETH( 15, 59) = 0.118199E+01 +PKER_SWETH( 15, 60) = 0.118628E+01 +PKER_SWETH( 15, 61) = 0.119031E+01 +PKER_SWETH( 15, 62) = 0.119409E+01 +PKER_SWETH( 15, 63) = 0.119764E+01 +PKER_SWETH( 15, 64) = 0.120097E+01 +PKER_SWETH( 15, 65) = 0.120410E+01 +PKER_SWETH( 15, 66) = 0.120703E+01 +PKER_SWETH( 15, 67) = 0.120979E+01 +PKER_SWETH( 15, 68) = 0.121237E+01 +PKER_SWETH( 15, 69) = 0.121480E+01 +PKER_SWETH( 15, 70) = 0.121708E+01 +PKER_SWETH( 15, 71) = 0.121922E+01 +PKER_SWETH( 15, 72) = 0.122123E+01 +PKER_SWETH( 15, 73) = 0.122312E+01 +PKER_SWETH( 15, 74) = 0.122489E+01 +PKER_SWETH( 15, 75) = 0.122656E+01 +PKER_SWETH( 15, 76) = 0.122812E+01 +PKER_SWETH( 15, 77) = 0.122958E+01 +PKER_SWETH( 15, 78) = 0.123096E+01 +PKER_SWETH( 15, 79) = 0.123225E+01 +PKER_SWETH( 15, 80) = 0.123347E+01 +PKER_SWETH( 16, 1) = 0.222105E+01 +PKER_SWETH( 16, 2) = 0.202837E+01 +PKER_SWETH( 16, 3) = 0.184739E+01 +PKER_SWETH( 16, 4) = 0.167741E+01 +PKER_SWETH( 16, 5) = 0.151773E+01 +PKER_SWETH( 16, 6) = 0.136773E+01 +PKER_SWETH( 16, 7) = 0.122679E+01 +PKER_SWETH( 16, 8) = 0.109439E+01 +PKER_SWETH( 16, 9) = 0.970044E+00 +PKER_SWETH( 16, 10) = 0.853387E+00 +PKER_SWETH( 16, 11) = 0.744213E+00 +PKER_SWETH( 16, 12) = 0.642547E+00 +PKER_SWETH( 16, 13) = 0.548734E+00 +PKER_SWETH( 16, 14) = 0.463499E+00 +PKER_SWETH( 16, 15) = 0.387925E+00 +PKER_SWETH( 16, 16) = 0.323415E+00 +PKER_SWETH( 16, 17) = 0.271432E+00 +PKER_SWETH( 16, 18) = 0.233220E+00 +PKER_SWETH( 16, 19) = 0.209657E+00 +PKER_SWETH( 16, 20) = 0.200923E+00 +PKER_SWETH( 16, 21) = 0.206127E+00 +PKER_SWETH( 16, 22) = 0.223993E+00 +PKER_SWETH( 16, 23) = 0.252341E+00 +PKER_SWETH( 16, 24) = 0.288839E+00 +PKER_SWETH( 16, 25) = 0.331067E+00 +PKER_SWETH( 16, 26) = 0.376740E+00 +PKER_SWETH( 16, 27) = 0.423873E+00 +PKER_SWETH( 16, 28) = 0.470831E+00 +PKER_SWETH( 16, 29) = 0.516360E+00 +PKER_SWETH( 16, 30) = 0.559563E+00 +PKER_SWETH( 16, 31) = 0.599884E+00 +PKER_SWETH( 16, 32) = 0.637048E+00 +PKER_SWETH( 16, 33) = 0.671007E+00 +PKER_SWETH( 16, 34) = 0.701874E+00 +PKER_SWETH( 16, 35) = 0.729862E+00 +PKER_SWETH( 16, 36) = 0.755230E+00 +PKER_SWETH( 16, 37) = 0.778255E+00 +PKER_SWETH( 16, 38) = 0.799202E+00 +PKER_SWETH( 16, 39) = 0.818313E+00 +PKER_SWETH( 16, 40) = 0.835804E+00 +PKER_SWETH( 16, 41) = 0.851863E+00 +PKER_SWETH( 16, 42) = 0.866650E+00 +PKER_SWETH( 16, 43) = 0.880303E+00 +PKER_SWETH( 16, 44) = 0.892941E+00 +PKER_SWETH( 16, 45) = 0.904664E+00 +PKER_SWETH( 16, 46) = 0.915558E+00 +PKER_SWETH( 16, 47) = 0.925699E+00 +PKER_SWETH( 16, 48) = 0.935152E+00 +PKER_SWETH( 16, 49) = 0.943974E+00 +PKER_SWETH( 16, 50) = 0.952215E+00 +PKER_SWETH( 16, 51) = 0.959919E+00 +PKER_SWETH( 16, 52) = 0.967128E+00 +PKER_SWETH( 16, 53) = 0.973876E+00 +PKER_SWETH( 16, 54) = 0.980196E+00 +PKER_SWETH( 16, 55) = 0.986118E+00 +PKER_SWETH( 16, 56) = 0.991669E+00 +PKER_SWETH( 16, 57) = 0.996874E+00 +PKER_SWETH( 16, 58) = 0.100175E+01 +PKER_SWETH( 16, 59) = 0.100633E+01 +PKER_SWETH( 16, 60) = 0.101063E+01 +PKER_SWETH( 16, 61) = 0.101466E+01 +PKER_SWETH( 16, 62) = 0.101844E+01 +PKER_SWETH( 16, 63) = 0.102199E+01 +PKER_SWETH( 16, 64) = 0.102532E+01 +PKER_SWETH( 16, 65) = 0.102845E+01 +PKER_SWETH( 16, 66) = 0.103138E+01 +PKER_SWETH( 16, 67) = 0.103414E+01 +PKER_SWETH( 16, 68) = 0.103673E+01 +PKER_SWETH( 16, 69) = 0.103916E+01 +PKER_SWETH( 16, 70) = 0.104144E+01 +PKER_SWETH( 16, 71) = 0.104358E+01 +PKER_SWETH( 16, 72) = 0.104559E+01 +PKER_SWETH( 16, 73) = 0.104747E+01 +PKER_SWETH( 16, 74) = 0.104925E+01 +PKER_SWETH( 16, 75) = 0.105091E+01 +PKER_SWETH( 16, 76) = 0.105247E+01 +PKER_SWETH( 16, 77) = 0.105394E+01 +PKER_SWETH( 16, 78) = 0.105531E+01 +PKER_SWETH( 16, 79) = 0.105661E+01 +PKER_SWETH( 16, 80) = 0.105782E+01 +PKER_SWETH( 17, 1) = 0.235216E+01 +PKER_SWETH( 17, 2) = 0.215952E+01 +PKER_SWETH( 17, 3) = 0.197860E+01 +PKER_SWETH( 17, 4) = 0.180867E+01 +PKER_SWETH( 17, 5) = 0.164907E+01 +PKER_SWETH( 17, 6) = 0.149914E+01 +PKER_SWETH( 17, 7) = 0.135829E+01 +PKER_SWETH( 17, 8) = 0.122594E+01 +PKER_SWETH( 17, 9) = 0.110158E+01 +PKER_SWETH( 17, 10) = 0.984701E+00 +PKER_SWETH( 17, 11) = 0.874876E+00 +PKER_SWETH( 17, 12) = 0.771739E+00 +PKER_SWETH( 17, 13) = 0.675054E+00 +PKER_SWETH( 17, 14) = 0.584764E+00 +PKER_SWETH( 17, 15) = 0.501058E+00 +PKER_SWETH( 17, 16) = 0.424483E+00 +PKER_SWETH( 17, 17) = 0.355906E+00 +PKER_SWETH( 17, 18) = 0.296493E+00 +PKER_SWETH( 17, 19) = 0.247642E+00 +PKER_SWETH( 17, 20) = 0.210649E+00 +PKER_SWETH( 17, 21) = 0.186453E+00 +PKER_SWETH( 17, 22) = 0.175549E+00 +PKER_SWETH( 17, 23) = 0.177592E+00 +PKER_SWETH( 17, 24) = 0.191285E+00 +PKER_SWETH( 17, 25) = 0.215005E+00 +PKER_SWETH( 17, 26) = 0.246505E+00 +PKER_SWETH( 17, 27) = 0.283441E+00 +PKER_SWETH( 17, 28) = 0.323511E+00 +PKER_SWETH( 17, 29) = 0.364750E+00 +PKER_SWETH( 17, 30) = 0.405561E+00 +PKER_SWETH( 17, 31) = 0.444783E+00 +PKER_SWETH( 17, 32) = 0.481674E+00 +PKER_SWETH( 17, 33) = 0.515838E+00 +PKER_SWETH( 17, 34) = 0.547151E+00 +PKER_SWETH( 17, 35) = 0.575673E+00 +PKER_SWETH( 17, 36) = 0.601576E+00 +PKER_SWETH( 17, 37) = 0.625091E+00 +PKER_SWETH( 17, 38) = 0.646461E+00 +PKER_SWETH( 17, 39) = 0.665927E+00 +PKER_SWETH( 17, 40) = 0.683709E+00 +PKER_SWETH( 17, 41) = 0.700001E+00 +PKER_SWETH( 17, 42) = 0.714974E+00 +PKER_SWETH( 17, 43) = 0.728775E+00 +PKER_SWETH( 17, 44) = 0.741528E+00 +PKER_SWETH( 17, 45) = 0.753341E+00 +PKER_SWETH( 17, 46) = 0.764305E+00 +PKER_SWETH( 17, 47) = 0.774501E+00 +PKER_SWETH( 17, 48) = 0.783997E+00 +PKER_SWETH( 17, 49) = 0.792851E+00 +PKER_SWETH( 17, 50) = 0.801118E+00 +PKER_SWETH( 17, 51) = 0.808842E+00 +PKER_SWETH( 17, 52) = 0.816066E+00 +PKER_SWETH( 17, 53) = 0.822826E+00 +PKER_SWETH( 17, 54) = 0.829156E+00 +PKER_SWETH( 17, 55) = 0.835085E+00 +PKER_SWETH( 17, 56) = 0.840642E+00 +PKER_SWETH( 17, 57) = 0.845851E+00 +PKER_SWETH( 17, 58) = 0.850735E+00 +PKER_SWETH( 17, 59) = 0.855316E+00 +PKER_SWETH( 17, 60) = 0.859613E+00 +PKER_SWETH( 17, 61) = 0.863645E+00 +PKER_SWETH( 17, 62) = 0.867428E+00 +PKER_SWETH( 17, 63) = 0.870979E+00 +PKER_SWETH( 17, 64) = 0.874311E+00 +PKER_SWETH( 17, 65) = 0.877439E+00 +PKER_SWETH( 17, 66) = 0.880375E+00 +PKER_SWETH( 17, 67) = 0.883131E+00 +PKER_SWETH( 17, 68) = 0.885718E+00 +PKER_SWETH( 17, 69) = 0.888147E+00 +PKER_SWETH( 17, 70) = 0.890427E+00 +PKER_SWETH( 17, 71) = 0.892568E+00 +PKER_SWETH( 17, 72) = 0.894578E+00 +PKER_SWETH( 17, 73) = 0.896465E+00 +PKER_SWETH( 17, 74) = 0.898237E+00 +PKER_SWETH( 17, 75) = 0.899901E+00 +PKER_SWETH( 17, 76) = 0.901463E+00 +PKER_SWETH( 17, 77) = 0.902929E+00 +PKER_SWETH( 17, 78) = 0.904307E+00 +PKER_SWETH( 17, 79) = 0.905600E+00 +PKER_SWETH( 17, 80) = 0.906814E+00 +PKER_SWETH( 18, 1) = 0.246485E+01 +PKER_SWETH( 18, 2) = 0.227225E+01 +PKER_SWETH( 18, 3) = 0.209136E+01 +PKER_SWETH( 18, 4) = 0.192149E+01 +PKER_SWETH( 18, 5) = 0.176194E+01 +PKER_SWETH( 18, 6) = 0.161208E+01 +PKER_SWETH( 18, 7) = 0.147130E+01 +PKER_SWETH( 18, 8) = 0.133905E+01 +PKER_SWETH( 18, 9) = 0.121479E+01 +PKER_SWETH( 18, 10) = 0.109802E+01 +PKER_SWETH( 18, 11) = 0.988254E+00 +PKER_SWETH( 18, 12) = 0.885064E+00 +PKER_SWETH( 18, 13) = 0.788046E+00 +PKER_SWETH( 18, 14) = 0.696856E+00 +PKER_SWETH( 18, 15) = 0.611240E+00 +PKER_SWETH( 18, 16) = 0.531085E+00 +PKER_SWETH( 18, 17) = 0.456489E+00 +PKER_SWETH( 18, 18) = 0.387822E+00 +PKER_SWETH( 18, 19) = 0.325787E+00 +PKER_SWETH( 18, 20) = 0.271388E+00 +PKER_SWETH( 18, 21) = 0.225865E+00 +PKER_SWETH( 18, 22) = 0.190524E+00 +PKER_SWETH( 18, 23) = 0.166451E+00 +PKER_SWETH( 18, 24) = 0.154224E+00 +PKER_SWETH( 18, 25) = 0.153728E+00 +PKER_SWETH( 18, 26) = 0.164235E+00 +PKER_SWETH( 18, 27) = 0.184044E+00 +PKER_SWETH( 18, 28) = 0.211126E+00 +PKER_SWETH( 18, 29) = 0.243228E+00 +PKER_SWETH( 18, 30) = 0.278092E+00 +PKER_SWETH( 18, 31) = 0.313828E+00 +PKER_SWETH( 18, 32) = 0.348949E+00 +PKER_SWETH( 18, 33) = 0.382443E+00 +PKER_SWETH( 18, 34) = 0.413728E+00 +PKER_SWETH( 18, 35) = 0.442554E+00 +PKER_SWETH( 18, 36) = 0.468900E+00 +PKER_SWETH( 18, 37) = 0.492882E+00 +PKER_SWETH( 18, 38) = 0.514690E+00 +PKER_SWETH( 18, 39) = 0.534538E+00 +PKER_SWETH( 18, 40) = 0.552641E+00 +PKER_SWETH( 18, 41) = 0.569197E+00 +PKER_SWETH( 18, 42) = 0.584381E+00 +PKER_SWETH( 18, 43) = 0.598350E+00 +PKER_SWETH( 18, 44) = 0.611236E+00 +PKER_SWETH( 18, 45) = 0.623153E+00 +PKER_SWETH( 18, 46) = 0.634198E+00 +PKER_SWETH( 18, 47) = 0.644457E+00 +PKER_SWETH( 18, 48) = 0.654002E+00 +PKER_SWETH( 18, 49) = 0.662895E+00 +PKER_SWETH( 18, 50) = 0.671191E+00 +PKER_SWETH( 18, 51) = 0.678938E+00 +PKER_SWETH( 18, 52) = 0.686179E+00 +PKER_SWETH( 18, 53) = 0.692953E+00 +PKER_SWETH( 18, 54) = 0.699294E+00 +PKER_SWETH( 18, 55) = 0.705231E+00 +PKER_SWETH( 18, 56) = 0.710794E+00 +PKER_SWETH( 18, 57) = 0.716008E+00 +PKER_SWETH( 18, 58) = 0.720896E+00 +PKER_SWETH( 18, 59) = 0.725480E+00 +PKER_SWETH( 18, 60) = 0.729780E+00 +PKER_SWETH( 18, 61) = 0.733814E+00 +PKER_SWETH( 18, 62) = 0.737598E+00 +PKER_SWETH( 18, 63) = 0.741150E+00 +PKER_SWETH( 18, 64) = 0.744483E+00 +PKER_SWETH( 18, 65) = 0.747611E+00 +PKER_SWETH( 18, 66) = 0.750548E+00 +PKER_SWETH( 18, 67) = 0.753304E+00 +PKER_SWETH( 18, 68) = 0.755892E+00 +PKER_SWETH( 18, 69) = 0.758321E+00 +PKER_SWETH( 18, 70) = 0.760601E+00 +PKER_SWETH( 18, 71) = 0.762742E+00 +PKER_SWETH( 18, 72) = 0.764752E+00 +PKER_SWETH( 18, 73) = 0.766640E+00 +PKER_SWETH( 18, 74) = 0.768412E+00 +PKER_SWETH( 18, 75) = 0.770075E+00 +PKER_SWETH( 18, 76) = 0.771638E+00 +PKER_SWETH( 18, 77) = 0.773104E+00 +PKER_SWETH( 18, 78) = 0.774481E+00 +PKER_SWETH( 18, 79) = 0.775774E+00 +PKER_SWETH( 18, 80) = 0.776989E+00 +PKER_SWETH( 19, 1) = 0.256173E+01 +PKER_SWETH( 19, 2) = 0.236914E+01 +PKER_SWETH( 19, 3) = 0.218829E+01 +PKER_SWETH( 19, 4) = 0.201844E+01 +PKER_SWETH( 19, 5) = 0.185894E+01 +PKER_SWETH( 19, 6) = 0.170913E+01 +PKER_SWETH( 19, 7) = 0.156841E+01 +PKER_SWETH( 19, 8) = 0.143624E+01 +PKER_SWETH( 19, 9) = 0.131207E+01 +PKER_SWETH( 19, 10) = 0.119540E+01 +PKER_SWETH( 19, 11) = 0.108576E+01 +PKER_SWETH( 19, 12) = 0.982703E+00 +PKER_SWETH( 19, 13) = 0.885808E+00 +PKER_SWETH( 19, 14) = 0.794678E+00 +PKER_SWETH( 19, 15) = 0.708950E+00 +PKER_SWETH( 19, 16) = 0.628301E+00 +PKER_SWETH( 19, 17) = 0.552477E+00 +PKER_SWETH( 19, 18) = 0.481331E+00 +PKER_SWETH( 19, 19) = 0.414882E+00 +PKER_SWETH( 19, 20) = 0.353398E+00 +PKER_SWETH( 19, 21) = 0.297416E+00 +PKER_SWETH( 19, 22) = 0.247807E+00 +PKER_SWETH( 19, 23) = 0.205699E+00 +PKER_SWETH( 19, 24) = 0.172316E+00 +PKER_SWETH( 19, 25) = 0.148819E+00 +PKER_SWETH( 19, 26) = 0.135924E+00 +PKER_SWETH( 19, 27) = 0.133720E+00 +PKER_SWETH( 19, 28) = 0.141549E+00 +PKER_SWETH( 19, 29) = 0.158042E+00 +PKER_SWETH( 19, 30) = 0.181252E+00 +PKER_SWETH( 19, 31) = 0.208933E+00 +PKER_SWETH( 19, 32) = 0.239000E+00 +PKER_SWETH( 19, 33) = 0.269677E+00 +PKER_SWETH( 19, 34) = 0.299634E+00 +PKER_SWETH( 19, 35) = 0.328045E+00 +PKER_SWETH( 19, 36) = 0.354467E+00 +PKER_SWETH( 19, 37) = 0.378756E+00 +PKER_SWETH( 19, 38) = 0.400947E+00 +PKER_SWETH( 19, 39) = 0.421175E+00 +PKER_SWETH( 19, 40) = 0.439618E+00 +PKER_SWETH( 19, 41) = 0.456462E+00 +PKER_SWETH( 19, 42) = 0.471885E+00 +PKER_SWETH( 19, 43) = 0.486045E+00 +PKER_SWETH( 19, 44) = 0.499082E+00 +PKER_SWETH( 19, 45) = 0.511119E+00 +PKER_SWETH( 19, 46) = 0.522259E+00 +PKER_SWETH( 19, 47) = 0.532591E+00 +PKER_SWETH( 19, 48) = 0.542192E+00 +PKER_SWETH( 19, 49) = 0.551129E+00 +PKER_SWETH( 19, 50) = 0.559459E+00 +PKER_SWETH( 19, 51) = 0.567233E+00 +PKER_SWETH( 19, 52) = 0.574495E+00 +PKER_SWETH( 19, 53) = 0.581285E+00 +PKER_SWETH( 19, 54) = 0.587637E+00 +PKER_SWETH( 19, 55) = 0.593585E+00 +PKER_SWETH( 19, 56) = 0.599155E+00 +PKER_SWETH( 19, 57) = 0.604374E+00 +PKER_SWETH( 19, 58) = 0.609267E+00 +PKER_SWETH( 19, 59) = 0.613855E+00 +PKER_SWETH( 19, 60) = 0.618157E+00 +PKER_SWETH( 19, 61) = 0.622193E+00 +PKER_SWETH( 19, 62) = 0.625979E+00 +PKER_SWETH( 19, 63) = 0.629532E+00 +PKER_SWETH( 19, 64) = 0.632866E+00 +PKER_SWETH( 19, 65) = 0.635995E+00 +PKER_SWETH( 19, 66) = 0.638932E+00 +PKER_SWETH( 19, 67) = 0.641689E+00 +PKER_SWETH( 19, 68) = 0.644277E+00 +PKER_SWETH( 19, 69) = 0.646706E+00 +PKER_SWETH( 19, 70) = 0.648987E+00 +PKER_SWETH( 19, 71) = 0.651128E+00 +PKER_SWETH( 19, 72) = 0.653138E+00 +PKER_SWETH( 19, 73) = 0.655026E+00 +PKER_SWETH( 19, 74) = 0.656798E+00 +PKER_SWETH( 19, 75) = 0.658461E+00 +PKER_SWETH( 19, 76) = 0.660024E+00 +PKER_SWETH( 19, 77) = 0.661490E+00 +PKER_SWETH( 19, 78) = 0.662868E+00 +PKER_SWETH( 19, 79) = 0.664161E+00 +PKER_SWETH( 19, 80) = 0.665375E+00 +PKER_SWETH( 20, 1) = 0.264500E+01 +PKER_SWETH( 20, 2) = 0.245243E+01 +PKER_SWETH( 20, 3) = 0.227160E+01 +PKER_SWETH( 20, 4) = 0.210178E+01 +PKER_SWETH( 20, 5) = 0.194230E+01 +PKER_SWETH( 20, 6) = 0.179253E+01 +PKER_SWETH( 20, 7) = 0.165187E+01 +PKER_SWETH( 20, 8) = 0.151975E+01 +PKER_SWETH( 20, 9) = 0.139564E+01 +PKER_SWETH( 20, 10) = 0.127905E+01 +PKER_SWETH( 20, 11) = 0.116951E+01 +PKER_SWETH( 20, 12) = 0.106658E+01 +PKER_SWETH( 20, 13) = 0.969820E+00 +PKER_SWETH( 20, 14) = 0.878851E+00 +PKER_SWETH( 20, 15) = 0.793291E+00 +PKER_SWETH( 20, 16) = 0.712786E+00 +PKER_SWETH( 20, 17) = 0.637005E+00 +PKER_SWETH( 20, 18) = 0.565650E+00 +PKER_SWETH( 20, 19) = 0.498472E+00 +PKER_SWETH( 20, 20) = 0.435308E+00 +PKER_SWETH( 20, 21) = 0.376129E+00 +PKER_SWETH( 20, 22) = 0.321110E+00 +PKER_SWETH( 20, 23) = 0.270680E+00 +PKER_SWETH( 20, 24) = 0.225582E+00 +PKER_SWETH( 20, 25) = 0.186836E+00 +PKER_SWETH( 20, 26) = 0.155610E+00 +PKER_SWETH( 20, 27) = 0.133055E+00 +PKER_SWETH( 20, 28) = 0.119975E+00 +PKER_SWETH( 20, 29) = 0.116599E+00 +PKER_SWETH( 20, 30) = 0.122369E+00 +PKER_SWETH( 20, 31) = 0.136033E+00 +PKER_SWETH( 20, 32) = 0.155727E+00 +PKER_SWETH( 20, 33) = 0.179407E+00 +PKER_SWETH( 20, 34) = 0.205090E+00 +PKER_SWETH( 20, 35) = 0.231197E+00 +PKER_SWETH( 20, 36) = 0.256588E+00 +PKER_SWETH( 20, 37) = 0.280587E+00 +PKER_SWETH( 20, 38) = 0.302872E+00 +PKER_SWETH( 20, 39) = 0.323359E+00 +PKER_SWETH( 20, 40) = 0.342106E+00 +PKER_SWETH( 20, 41) = 0.359241E+00 +PKER_SWETH( 20, 42) = 0.374919E+00 +PKER_SWETH( 20, 43) = 0.389291E+00 +PKER_SWETH( 20, 44) = 0.402502E+00 +PKER_SWETH( 20, 45) = 0.414676E+00 +PKER_SWETH( 20, 46) = 0.425924E+00 +PKER_SWETH( 20, 47) = 0.436341E+00 +PKER_SWETH( 20, 48) = 0.446009E+00 +PKER_SWETH( 20, 49) = 0.454997E+00 +PKER_SWETH( 20, 50) = 0.463367E+00 +PKER_SWETH( 20, 51) = 0.471171E+00 +PKER_SWETH( 20, 52) = 0.478457E+00 +PKER_SWETH( 20, 53) = 0.485265E+00 +PKER_SWETH( 20, 54) = 0.491632E+00 +PKER_SWETH( 20, 55) = 0.497590E+00 +PKER_SWETH( 20, 56) = 0.503169E+00 +PKER_SWETH( 20, 57) = 0.508395E+00 +PKER_SWETH( 20, 58) = 0.513293E+00 +PKER_SWETH( 20, 59) = 0.517884E+00 +PKER_SWETH( 20, 60) = 0.522189E+00 +PKER_SWETH( 20, 61) = 0.526227E+00 +PKER_SWETH( 20, 62) = 0.530016E+00 +PKER_SWETH( 20, 63) = 0.533570E+00 +PKER_SWETH( 20, 64) = 0.536905E+00 +PKER_SWETH( 20, 65) = 0.540035E+00 +PKER_SWETH( 20, 66) = 0.542973E+00 +PKER_SWETH( 20, 67) = 0.545730E+00 +PKER_SWETH( 20, 68) = 0.548318E+00 +PKER_SWETH( 20, 69) = 0.550748E+00 +PKER_SWETH( 20, 70) = 0.553029E+00 +PKER_SWETH( 20, 71) = 0.555170E+00 +PKER_SWETH( 20, 72) = 0.557181E+00 +PKER_SWETH( 20, 73) = 0.559068E+00 +PKER_SWETH( 20, 74) = 0.560840E+00 +PKER_SWETH( 20, 75) = 0.562504E+00 +PKER_SWETH( 20, 76) = 0.564067E+00 +PKER_SWETH( 20, 77) = 0.565533E+00 +PKER_SWETH( 20, 78) = 0.566911E+00 +PKER_SWETH( 20, 79) = 0.568204E+00 +PKER_SWETH( 20, 80) = 0.569418E+00 +PKER_SWETH( 21, 1) = 0.271658E+01 +PKER_SWETH( 21, 2) = 0.252403E+01 +PKER_SWETH( 21, 3) = 0.234321E+01 +PKER_SWETH( 21, 4) = 0.217341E+01 +PKER_SWETH( 21, 5) = 0.201396E+01 +PKER_SWETH( 21, 6) = 0.186421E+01 +PKER_SWETH( 21, 7) = 0.172358E+01 +PKER_SWETH( 21, 8) = 0.159150E+01 +PKER_SWETH( 21, 9) = 0.146745E+01 +PKER_SWETH( 21, 10) = 0.135092E+01 +PKER_SWETH( 21, 11) = 0.124145E+01 +PKER_SWETH( 21, 12) = 0.113861E+01 +PKER_SWETH( 21, 13) = 0.104196E+01 +PKER_SWETH( 21, 14) = 0.951122E+00 +PKER_SWETH( 21, 15) = 0.865719E+00 +PKER_SWETH( 21, 16) = 0.785398E+00 +PKER_SWETH( 21, 17) = 0.709821E+00 +PKER_SWETH( 21, 18) = 0.638672E+00 +PKER_SWETH( 21, 19) = 0.571650E+00 +PKER_SWETH( 21, 20) = 0.508481E+00 +PKER_SWETH( 21, 21) = 0.448928E+00 +PKER_SWETH( 21, 22) = 0.392821E+00 +PKER_SWETH( 21, 23) = 0.340101E+00 +PKER_SWETH( 21, 24) = 0.290879E+00 +PKER_SWETH( 21, 25) = 0.245501E+00 +PKER_SWETH( 21, 26) = 0.204609E+00 +PKER_SWETH( 21, 27) = 0.169114E+00 +PKER_SWETH( 21, 28) = 0.140143E+00 +PKER_SWETH( 21, 29) = 0.118804E+00 +PKER_SWETH( 21, 30) = 0.105905E+00 +PKER_SWETH( 21, 31) = 0.101754E+00 +PKER_SWETH( 21, 32) = 0.105915E+00 +PKER_SWETH( 21, 33) = 0.117110E+00 +PKER_SWETH( 21, 34) = 0.133717E+00 +PKER_SWETH( 21, 35) = 0.153768E+00 +PKER_SWETH( 21, 36) = 0.175523E+00 +PKER_SWETH( 21, 37) = 0.197593E+00 +PKER_SWETH( 21, 38) = 0.219023E+00 +PKER_SWETH( 21, 39) = 0.239267E+00 +PKER_SWETH( 21, 40) = 0.258077E+00 +PKER_SWETH( 21, 41) = 0.275405E+00 +PKER_SWETH( 21, 42) = 0.291307E+00 +PKER_SWETH( 21, 43) = 0.305894E+00 +PKER_SWETH( 21, 44) = 0.319290E+00 +PKER_SWETH( 21, 45) = 0.331618E+00 +PKER_SWETH( 21, 46) = 0.342990E+00 +PKER_SWETH( 21, 47) = 0.353504E+00 +PKER_SWETH( 21, 48) = 0.363248E+00 +PKER_SWETH( 21, 49) = 0.372296E+00 +PKER_SWETH( 21, 50) = 0.380712E+00 +PKER_SWETH( 21, 51) = 0.388553E+00 +PKER_SWETH( 21, 52) = 0.395866E+00 +PKER_SWETH( 21, 53) = 0.402696E+00 +PKER_SWETH( 21, 54) = 0.409079E+00 +PKER_SWETH( 21, 55) = 0.415050E+00 +PKER_SWETH( 21, 56) = 0.420639E+00 +PKER_SWETH( 21, 57) = 0.425872E+00 +PKER_SWETH( 21, 58) = 0.430776E+00 +PKER_SWETH( 21, 59) = 0.435372E+00 +PKER_SWETH( 21, 60) = 0.439681E+00 +PKER_SWETH( 21, 61) = 0.443722E+00 +PKER_SWETH( 21, 62) = 0.447512E+00 +PKER_SWETH( 21, 63) = 0.451068E+00 +PKER_SWETH( 21, 64) = 0.454404E+00 +PKER_SWETH( 21, 65) = 0.457535E+00 +PKER_SWETH( 21, 66) = 0.460473E+00 +PKER_SWETH( 21, 67) = 0.463231E+00 +PKER_SWETH( 21, 68) = 0.465820E+00 +PKER_SWETH( 21, 69) = 0.468250E+00 +PKER_SWETH( 21, 70) = 0.470532E+00 +PKER_SWETH( 21, 71) = 0.472673E+00 +PKER_SWETH( 21, 72) = 0.474684E+00 +PKER_SWETH( 21, 73) = 0.476571E+00 +PKER_SWETH( 21, 74) = 0.478344E+00 +PKER_SWETH( 21, 75) = 0.480008E+00 +PKER_SWETH( 21, 76) = 0.481570E+00 +PKER_SWETH( 21, 77) = 0.483037E+00 +PKER_SWETH( 21, 78) = 0.484414E+00 +PKER_SWETH( 21, 79) = 0.485707E+00 +PKER_SWETH( 21, 80) = 0.486921E+00 +PKER_SWETH( 22, 1) = 0.277812E+01 +PKER_SWETH( 22, 2) = 0.258557E+01 +PKER_SWETH( 22, 3) = 0.240477E+01 +PKER_SWETH( 22, 4) = 0.223498E+01 +PKER_SWETH( 22, 5) = 0.207555E+01 +PKER_SWETH( 22, 6) = 0.192582E+01 +PKER_SWETH( 22, 7) = 0.178522E+01 +PKER_SWETH( 22, 8) = 0.165317E+01 +PKER_SWETH( 22, 9) = 0.152915E+01 +PKER_SWETH( 22, 10) = 0.141267E+01 +PKER_SWETH( 22, 11) = 0.130326E+01 +PKER_SWETH( 22, 12) = 0.120048E+01 +PKER_SWETH( 22, 13) = 0.110391E+01 +PKER_SWETH( 22, 14) = 0.101317E+01 +PKER_SWETH( 22, 15) = 0.927888E+00 +PKER_SWETH( 22, 16) = 0.847710E+00 +PKER_SWETH( 22, 17) = 0.772307E+00 +PKER_SWETH( 22, 18) = 0.701363E+00 +PKER_SWETH( 22, 19) = 0.634577E+00 +PKER_SWETH( 22, 20) = 0.571663E+00 +PKER_SWETH( 22, 21) = 0.512351E+00 +PKER_SWETH( 22, 22) = 0.456387E+00 +PKER_SWETH( 22, 23) = 0.403551E+00 +PKER_SWETH( 22, 24) = 0.353674E+00 +PKER_SWETH( 22, 25) = 0.306679E+00 +PKER_SWETH( 22, 26) = 0.262639E+00 +PKER_SWETH( 22, 27) = 0.221831E+00 +PKER_SWETH( 22, 28) = 0.184828E+00 +PKER_SWETH( 22, 29) = 0.152460E+00 +PKER_SWETH( 22, 30) = 0.125752E+00 +PKER_SWETH( 22, 31) = 0.105794E+00 +PKER_SWETH( 22, 32) = 0.933885E-01 +PKER_SWETH( 22, 33) = 0.887837E-01 +PKER_SWETH( 22, 34) = 0.916083E-01 +PKER_SWETH( 22, 35) = 0.100750E+00 +PKER_SWETH( 22, 36) = 0.114556E+00 +PKER_SWETH( 22, 37) = 0.131388E+00 +PKER_SWETH( 22, 38) = 0.149687E+00 +PKER_SWETH( 22, 39) = 0.168264E+00 +PKER_SWETH( 22, 40) = 0.186315E+00 +PKER_SWETH( 22, 41) = 0.203399E+00 +PKER_SWETH( 22, 42) = 0.219317E+00 +PKER_SWETH( 22, 43) = 0.234029E+00 +PKER_SWETH( 22, 44) = 0.247581E+00 +PKER_SWETH( 22, 45) = 0.260059E+00 +PKER_SWETH( 22, 46) = 0.271563E+00 +PKER_SWETH( 22, 47) = 0.282186E+00 +PKER_SWETH( 22, 48) = 0.292018E+00 +PKER_SWETH( 22, 49) = 0.301134E+00 +PKER_SWETH( 22, 50) = 0.309604E+00 +PKER_SWETH( 22, 51) = 0.317487E+00 +PKER_SWETH( 22, 52) = 0.324833E+00 +PKER_SWETH( 22, 53) = 0.331687E+00 +PKER_SWETH( 22, 54) = 0.338090E+00 +PKER_SWETH( 22, 55) = 0.344075E+00 +PKER_SWETH( 22, 56) = 0.349675E+00 +PKER_SWETH( 22, 57) = 0.354918E+00 +PKER_SWETH( 22, 58) = 0.359828E+00 +PKER_SWETH( 22, 59) = 0.364430E+00 +PKER_SWETH( 22, 60) = 0.368743E+00 +PKER_SWETH( 22, 61) = 0.372787E+00 +PKER_SWETH( 22, 62) = 0.376579E+00 +PKER_SWETH( 22, 63) = 0.380137E+00 +PKER_SWETH( 22, 64) = 0.383475E+00 +PKER_SWETH( 22, 65) = 0.386607E+00 +PKER_SWETH( 22, 66) = 0.389546E+00 +PKER_SWETH( 22, 67) = 0.392305E+00 +PKER_SWETH( 22, 68) = 0.394894E+00 +PKER_SWETH( 22, 69) = 0.397325E+00 +PKER_SWETH( 22, 70) = 0.399606E+00 +PKER_SWETH( 22, 71) = 0.401748E+00 +PKER_SWETH( 22, 72) = 0.403759E+00 +PKER_SWETH( 22, 73) = 0.405647E+00 +PKER_SWETH( 22, 74) = 0.407419E+00 +PKER_SWETH( 22, 75) = 0.409083E+00 +PKER_SWETH( 22, 76) = 0.410645E+00 +PKER_SWETH( 22, 77) = 0.412112E+00 +PKER_SWETH( 22, 78) = 0.413490E+00 +PKER_SWETH( 22, 79) = 0.414783E+00 +PKER_SWETH( 22, 80) = 0.415997E+00 +PKER_SWETH( 23, 1) = 0.283102E+01 +PKER_SWETH( 23, 2) = 0.263848E+01 +PKER_SWETH( 23, 3) = 0.245768E+01 +PKER_SWETH( 23, 4) = 0.228791E+01 +PKER_SWETH( 23, 5) = 0.212849E+01 +PKER_SWETH( 23, 6) = 0.197878E+01 +PKER_SWETH( 23, 7) = 0.183819E+01 +PKER_SWETH( 23, 8) = 0.170617E+01 +PKER_SWETH( 23, 9) = 0.158218E+01 +PKER_SWETH( 23, 10) = 0.146573E+01 +PKER_SWETH( 23, 11) = 0.135636E+01 +PKER_SWETH( 23, 12) = 0.125363E+01 +PKER_SWETH( 23, 13) = 0.115712E+01 +PKER_SWETH( 23, 14) = 0.106646E+01 +PKER_SWETH( 23, 15) = 0.981260E+00 +PKER_SWETH( 23, 16) = 0.901190E+00 +PKER_SWETH( 23, 17) = 0.825917E+00 +PKER_SWETH( 23, 18) = 0.755130E+00 +PKER_SWETH( 23, 19) = 0.688534E+00 +PKER_SWETH( 23, 20) = 0.625847E+00 +PKER_SWETH( 23, 21) = 0.566798E+00 +PKER_SWETH( 23, 22) = 0.511131E+00 +PKER_SWETH( 23, 23) = 0.458600E+00 +PKER_SWETH( 23, 24) = 0.408976E+00 +PKER_SWETH( 23, 25) = 0.362052E+00 +PKER_SWETH( 23, 26) = 0.317669E+00 +PKER_SWETH( 23, 27) = 0.275744E+00 +PKER_SWETH( 23, 28) = 0.236322E+00 +PKER_SWETH( 23, 29) = 0.199652E+00 +PKER_SWETH( 23, 30) = 0.166228E+00 +PKER_SWETH( 23, 31) = 0.136821E+00 +PKER_SWETH( 23, 32) = 0.112388E+00 +PKER_SWETH( 23, 33) = 0.939206E-01 +PKER_SWETH( 23, 34) = 0.821751E-01 +PKER_SWETH( 23, 35) = 0.773938E-01 +PKER_SWETH( 23, 36) = 0.791534E-01 +PKER_SWETH( 23, 37) = 0.864193E-01 +PKER_SWETH( 23, 38) = 0.978352E-01 +PKER_SWETH( 23, 39) = 0.111845E+00 +PKER_SWETH( 23, 40) = 0.127143E+00 +PKER_SWETH( 23, 41) = 0.142733E+00 +PKER_SWETH( 23, 42) = 0.157936E+00 +PKER_SWETH( 23, 43) = 0.172382E+00 +PKER_SWETH( 23, 44) = 0.185898E+00 +PKER_SWETH( 23, 45) = 0.198442E+00 +PKER_SWETH( 23, 46) = 0.210045E+00 +PKER_SWETH( 23, 47) = 0.220770E+00 +PKER_SWETH( 23, 48) = 0.230692E+00 +PKER_SWETH( 23, 49) = 0.239885E+00 +PKER_SWETH( 23, 50) = 0.248416E+00 +PKER_SWETH( 23, 51) = 0.256346E+00 +PKER_SWETH( 23, 52) = 0.263730E+00 +PKER_SWETH( 23, 53) = 0.270613E+00 +PKER_SWETH( 23, 54) = 0.277038E+00 +PKER_SWETH( 23, 55) = 0.283042E+00 +PKER_SWETH( 23, 56) = 0.288655E+00 +PKER_SWETH( 23, 57) = 0.293908E+00 +PKER_SWETH( 23, 58) = 0.298826E+00 +PKER_SWETH( 23, 59) = 0.303434E+00 +PKER_SWETH( 23, 60) = 0.307751E+00 +PKER_SWETH( 23, 61) = 0.311799E+00 +PKER_SWETH( 23, 62) = 0.315594E+00 +PKER_SWETH( 23, 63) = 0.319154E+00 +PKER_SWETH( 23, 64) = 0.322494E+00 +PKER_SWETH( 23, 65) = 0.325627E+00 +PKER_SWETH( 23, 66) = 0.328568E+00 +PKER_SWETH( 23, 67) = 0.331327E+00 +PKER_SWETH( 23, 68) = 0.333917E+00 +PKER_SWETH( 23, 69) = 0.336348E+00 +PKER_SWETH( 23, 70) = 0.338630E+00 +PKER_SWETH( 23, 71) = 0.340772E+00 +PKER_SWETH( 23, 72) = 0.342783E+00 +PKER_SWETH( 23, 73) = 0.344671E+00 +PKER_SWETH( 23, 74) = 0.346443E+00 +PKER_SWETH( 23, 75) = 0.348107E+00 +PKER_SWETH( 23, 76) = 0.349670E+00 +PKER_SWETH( 23, 77) = 0.351137E+00 +PKER_SWETH( 23, 78) = 0.352514E+00 +PKER_SWETH( 23, 79) = 0.353807E+00 +PKER_SWETH( 23, 80) = 0.355022E+00 +PKER_SWETH( 24, 1) = 0.287649E+01 +PKER_SWETH( 24, 2) = 0.268396E+01 +PKER_SWETH( 24, 3) = 0.250317E+01 +PKER_SWETH( 24, 4) = 0.233341E+01 +PKER_SWETH( 24, 5) = 0.217399E+01 +PKER_SWETH( 24, 6) = 0.202430E+01 +PKER_SWETH( 24, 7) = 0.188372E+01 +PKER_SWETH( 24, 8) = 0.175172E+01 +PKER_SWETH( 24, 9) = 0.162775E+01 +PKER_SWETH( 24, 10) = 0.151133E+01 +PKER_SWETH( 24, 11) = 0.140199E+01 +PKER_SWETH( 24, 12) = 0.129929E+01 +PKER_SWETH( 24, 13) = 0.120283E+01 +PKER_SWETH( 24, 14) = 0.111222E+01 +PKER_SWETH( 24, 15) = 0.102709E+01 +PKER_SWETH( 24, 16) = 0.947100E+00 +PKER_SWETH( 24, 17) = 0.871925E+00 +PKER_SWETH( 24, 18) = 0.801255E+00 +PKER_SWETH( 24, 19) = 0.734802E+00 +PKER_SWETH( 24, 20) = 0.672286E+00 +PKER_SWETH( 24, 21) = 0.613444E+00 +PKER_SWETH( 24, 22) = 0.558025E+00 +PKER_SWETH( 24, 23) = 0.505784E+00 +PKER_SWETH( 24, 24) = 0.456492E+00 +PKER_SWETH( 24, 25) = 0.409924E+00 +PKER_SWETH( 24, 26) = 0.365874E+00 +PKER_SWETH( 24, 27) = 0.324153E+00 +PKER_SWETH( 24, 28) = 0.284613E+00 +PKER_SWETH( 24, 29) = 0.247175E+00 +PKER_SWETH( 24, 30) = 0.211878E+00 +PKER_SWETH( 24, 31) = 0.178940E+00 +PKER_SWETH( 24, 32) = 0.148822E+00 +PKER_SWETH( 24, 33) = 0.122216E+00 +PKER_SWETH( 24, 34) = 0.100012E+00 +PKER_SWETH( 24, 35) = 0.831056E-01 +PKER_SWETH( 24, 36) = 0.721377E-01 +PKER_SWETH( 24, 37) = 0.673132E-01 +PKER_SWETH( 24, 38) = 0.682186E-01 +PKER_SWETH( 24, 39) = 0.739244E-01 +PKER_SWETH( 24, 40) = 0.832005E-01 +PKER_SWETH( 24, 41) = 0.947760E-01 +PKER_SWETH( 24, 42) = 0.107532E+00 +PKER_SWETH( 24, 43) = 0.120598E+00 +PKER_SWETH( 24, 44) = 0.133420E+00 +PKER_SWETH( 24, 45) = 0.145669E+00 +PKER_SWETH( 24, 46) = 0.157186E+00 +PKER_SWETH( 24, 47) = 0.167927E+00 +PKER_SWETH( 24, 48) = 0.177903E+00 +PKER_SWETH( 24, 49) = 0.187160E+00 +PKER_SWETH( 24, 50) = 0.195752E+00 +PKER_SWETH( 24, 51) = 0.203734E+00 +PKER_SWETH( 24, 52) = 0.211160E+00 +PKER_SWETH( 24, 53) = 0.218077E+00 +PKER_SWETH( 24, 54) = 0.224528E+00 +PKER_SWETH( 24, 55) = 0.230551E+00 +PKER_SWETH( 24, 56) = 0.236181E+00 +PKER_SWETH( 24, 57) = 0.241446E+00 +PKER_SWETH( 24, 58) = 0.246373E+00 +PKER_SWETH( 24, 59) = 0.250988E+00 +PKER_SWETH( 24, 60) = 0.255311E+00 +PKER_SWETH( 24, 61) = 0.259363E+00 +PKER_SWETH( 24, 62) = 0.263162E+00 +PKER_SWETH( 24, 63) = 0.266724E+00 +PKER_SWETH( 24, 64) = 0.270065E+00 +PKER_SWETH( 24, 65) = 0.273200E+00 +PKER_SWETH( 24, 66) = 0.276142E+00 +PKER_SWETH( 24, 67) = 0.278902E+00 +PKER_SWETH( 24, 68) = 0.281493E+00 +PKER_SWETH( 24, 69) = 0.283924E+00 +PKER_SWETH( 24, 70) = 0.286206E+00 +PKER_SWETH( 24, 71) = 0.288349E+00 +PKER_SWETH( 24, 72) = 0.290360E+00 +PKER_SWETH( 24, 73) = 0.292248E+00 +PKER_SWETH( 24, 74) = 0.294021E+00 +PKER_SWETH( 24, 75) = 0.295685E+00 +PKER_SWETH( 24, 76) = 0.297248E+00 +PKER_SWETH( 24, 77) = 0.298715E+00 +PKER_SWETH( 24, 78) = 0.300092E+00 +PKER_SWETH( 24, 79) = 0.301385E+00 +PKER_SWETH( 24, 80) = 0.302600E+00 +PKER_SWETH( 25, 1) = 0.291559E+01 +PKER_SWETH( 25, 2) = 0.272306E+01 +PKER_SWETH( 25, 3) = 0.254227E+01 +PKER_SWETH( 25, 4) = 0.237251E+01 +PKER_SWETH( 25, 5) = 0.221311E+01 +PKER_SWETH( 25, 6) = 0.206342E+01 +PKER_SWETH( 25, 7) = 0.192286E+01 +PKER_SWETH( 25, 8) = 0.179087E+01 +PKER_SWETH( 25, 9) = 0.166692E+01 +PKER_SWETH( 25, 10) = 0.155051E+01 +PKER_SWETH( 25, 11) = 0.144120E+01 +PKER_SWETH( 25, 12) = 0.133853E+01 +PKER_SWETH( 25, 13) = 0.124210E+01 +PKER_SWETH( 25, 14) = 0.115153E+01 +PKER_SWETH( 25, 15) = 0.106645E+01 +PKER_SWETH( 25, 16) = 0.986522E+00 +PKER_SWETH( 25, 17) = 0.911418E+00 +PKER_SWETH( 25, 18) = 0.840837E+00 +PKER_SWETH( 25, 19) = 0.774489E+00 +PKER_SWETH( 25, 20) = 0.712102E+00 +PKER_SWETH( 25, 21) = 0.653415E+00 +PKER_SWETH( 25, 22) = 0.598183E+00 +PKER_SWETH( 25, 23) = 0.546167E+00 +PKER_SWETH( 25, 24) = 0.497142E+00 +PKER_SWETH( 25, 25) = 0.450891E+00 +PKER_SWETH( 25, 26) = 0.407203E+00 +PKER_SWETH( 25, 27) = 0.365878E+00 +PKER_SWETH( 25, 28) = 0.326729E+00 +PKER_SWETH( 25, 29) = 0.289588E+00 +PKER_SWETH( 25, 30) = 0.254321E+00 +PKER_SWETH( 25, 31) = 0.220863E+00 +PKER_SWETH( 25, 32) = 0.189255E+00 +PKER_SWETH( 25, 33) = 0.159705E+00 +PKER_SWETH( 25, 34) = 0.132637E+00 +PKER_SWETH( 25, 35) = 0.108685E+00 +PKER_SWETH( 25, 36) = 0.886458E-01 +PKER_SWETH( 25, 37) = 0.733000E-01 +PKER_SWETH( 25, 38) = 0.631817E-01 +PKER_SWETH( 25, 39) = 0.584175E-01 +PKER_SWETH( 25, 40) = 0.586280E-01 +PKER_SWETH( 25, 41) = 0.629970E-01 +PKER_SWETH( 25, 42) = 0.704646E-01 +PKER_SWETH( 25, 43) = 0.799685E-01 +PKER_SWETH( 25, 44) = 0.905525E-01 +PKER_SWETH( 25, 45) = 0.101507E+00 +PKER_SWETH( 25, 46) = 0.112335E+00 +PKER_SWETH( 25, 47) = 0.122751E+00 +PKER_SWETH( 25, 48) = 0.132601E+00 +PKER_SWETH( 25, 49) = 0.141833E+00 +PKER_SWETH( 25, 50) = 0.150445E+00 +PKER_SWETH( 25, 51) = 0.158463E+00 +PKER_SWETH( 25, 52) = 0.165926E+00 +PKER_SWETH( 25, 53) = 0.172877E+00 +PKER_SWETH( 25, 54) = 0.179357E+00 +PKER_SWETH( 25, 55) = 0.185404E+00 +PKER_SWETH( 25, 56) = 0.191051E+00 +PKER_SWETH( 25, 57) = 0.196330E+00 +PKER_SWETH( 25, 58) = 0.201268E+00 +PKER_SWETH( 25, 59) = 0.205891E+00 +PKER_SWETH( 25, 60) = 0.210221E+00 +PKER_SWETH( 25, 61) = 0.214278E+00 +PKER_SWETH( 25, 62) = 0.218080E+00 +PKER_SWETH( 25, 63) = 0.221646E+00 +PKER_SWETH( 25, 64) = 0.224989E+00 +PKER_SWETH( 25, 65) = 0.228126E+00 +PKER_SWETH( 25, 66) = 0.231069E+00 +PKER_SWETH( 25, 67) = 0.233830E+00 +PKER_SWETH( 25, 68) = 0.236422E+00 +PKER_SWETH( 25, 69) = 0.238854E+00 +PKER_SWETH( 25, 70) = 0.241137E+00 +PKER_SWETH( 25, 71) = 0.243279E+00 +PKER_SWETH( 25, 72) = 0.245291E+00 +PKER_SWETH( 25, 73) = 0.247179E+00 +PKER_SWETH( 25, 74) = 0.248952E+00 +PKER_SWETH( 25, 75) = 0.250616E+00 +PKER_SWETH( 25, 76) = 0.252179E+00 +PKER_SWETH( 25, 77) = 0.253646E+00 +PKER_SWETH( 25, 78) = 0.255024E+00 +PKER_SWETH( 25, 79) = 0.256317E+00 +PKER_SWETH( 25, 80) = 0.257531E+00 +PKER_SWETH( 26, 1) = 0.294919E+01 +PKER_SWETH( 26, 2) = 0.275667E+01 +PKER_SWETH( 26, 3) = 0.257589E+01 +PKER_SWETH( 26, 4) = 0.240613E+01 +PKER_SWETH( 26, 5) = 0.224673E+01 +PKER_SWETH( 26, 6) = 0.209706E+01 +PKER_SWETH( 26, 7) = 0.195650E+01 +PKER_SWETH( 26, 8) = 0.182452E+01 +PKER_SWETH( 26, 9) = 0.170058E+01 +PKER_SWETH( 26, 10) = 0.158419E+01 +PKER_SWETH( 26, 11) = 0.147489E+01 +PKER_SWETH( 26, 12) = 0.137225E+01 +PKER_SWETH( 26, 13) = 0.127585E+01 +PKER_SWETH( 26, 14) = 0.118531E+01 +PKER_SWETH( 26, 15) = 0.110026E+01 +PKER_SWETH( 26, 16) = 0.102038E+01 +PKER_SWETH( 26, 17) = 0.945328E+00 +PKER_SWETH( 26, 18) = 0.874813E+00 +PKER_SWETH( 26, 19) = 0.808544E+00 +PKER_SWETH( 26, 20) = 0.746253E+00 +PKER_SWETH( 26, 21) = 0.687683E+00 +PKER_SWETH( 26, 22) = 0.632590E+00 +PKER_SWETH( 26, 23) = 0.580743E+00 +PKER_SWETH( 26, 24) = 0.531921E+00 +PKER_SWETH( 26, 25) = 0.485912E+00 +PKER_SWETH( 26, 26) = 0.442513E+00 +PKER_SWETH( 26, 27) = 0.401527E+00 +PKER_SWETH( 26, 28) = 0.362766E+00 +PKER_SWETH( 26, 29) = 0.326051E+00 +PKER_SWETH( 26, 30) = 0.291214E+00 +PKER_SWETH( 26, 31) = 0.258107E+00 +PKER_SWETH( 26, 32) = 0.226621E+00 +PKER_SWETH( 26, 33) = 0.196706E+00 +PKER_SWETH( 26, 34) = 0.168416E+00 +PKER_SWETH( 26, 35) = 0.141958E+00 +PKER_SWETH( 26, 36) = 0.117722E+00 +PKER_SWETH( 26, 37) = 0.962814E-01 +PKER_SWETH( 26, 38) = 0.783300E-01 +PKER_SWETH( 26, 39) = 0.645079E-01 +PKER_SWETH( 26, 40) = 0.552534E-01 +PKER_SWETH( 26, 41) = 0.506271E-01 +PKER_SWETH( 26, 42) = 0.502626E-01 +PKER_SWETH( 26, 43) = 0.534894E-01 +PKER_SWETH( 26, 44) = 0.594360E-01 +PKER_SWETH( 26, 45) = 0.671708E-01 +PKER_SWETH( 26, 46) = 0.759473E-01 +PKER_SWETH( 26, 47) = 0.851241E-01 +PKER_SWETH( 26, 48) = 0.942847E-01 +PKER_SWETH( 26, 49) = 0.103164E+00 +PKER_SWETH( 26, 50) = 0.111616E+00 +PKER_SWETH( 26, 51) = 0.119577E+00 +PKER_SWETH( 26, 52) = 0.127034E+00 +PKER_SWETH( 26, 53) = 0.134000E+00 +PKER_SWETH( 26, 54) = 0.140501E+00 +PKER_SWETH( 26, 55) = 0.146568E+00 +PKER_SWETH( 26, 56) = 0.152234E+00 +PKER_SWETH( 26, 57) = 0.157529E+00 +PKER_SWETH( 26, 58) = 0.162480E+00 +PKER_SWETH( 26, 59) = 0.167112E+00 +PKER_SWETH( 26, 60) = 0.171449E+00 +PKER_SWETH( 26, 61) = 0.175512E+00 +PKER_SWETH( 26, 62) = 0.179319E+00 +PKER_SWETH( 26, 63) = 0.182888E+00 +PKER_SWETH( 26, 64) = 0.186234E+00 +PKER_SWETH( 26, 65) = 0.189373E+00 +PKER_SWETH( 26, 66) = 0.192317E+00 +PKER_SWETH( 26, 67) = 0.195080E+00 +PKER_SWETH( 26, 68) = 0.197672E+00 +PKER_SWETH( 26, 69) = 0.200105E+00 +PKER_SWETH( 26, 70) = 0.202388E+00 +PKER_SWETH( 26, 71) = 0.204532E+00 +PKER_SWETH( 26, 72) = 0.206543E+00 +PKER_SWETH( 26, 73) = 0.208432E+00 +PKER_SWETH( 26, 74) = 0.210205E+00 +PKER_SWETH( 26, 75) = 0.211870E+00 +PKER_SWETH( 26, 76) = 0.213432E+00 +PKER_SWETH( 26, 77) = 0.214900E+00 +PKER_SWETH( 26, 78) = 0.216277E+00 +PKER_SWETH( 26, 79) = 0.217571E+00 +PKER_SWETH( 26, 80) = 0.218785E+00 +PKER_SWETH( 27, 1) = 0.297808E+01 +PKER_SWETH( 27, 2) = 0.278556E+01 +PKER_SWETH( 27, 3) = 0.260479E+01 +PKER_SWETH( 27, 4) = 0.243504E+01 +PKER_SWETH( 27, 5) = 0.227564E+01 +PKER_SWETH( 27, 6) = 0.212597E+01 +PKER_SWETH( 27, 7) = 0.198542E+01 +PKER_SWETH( 27, 8) = 0.185344E+01 +PKER_SWETH( 27, 9) = 0.172951E+01 +PKER_SWETH( 27, 10) = 0.161314E+01 +PKER_SWETH( 27, 11) = 0.150385E+01 +PKER_SWETH( 27, 12) = 0.140122E+01 +PKER_SWETH( 27, 13) = 0.130484E+01 +PKER_SWETH( 27, 14) = 0.121432E+01 +PKER_SWETH( 27, 15) = 0.112931E+01 +PKER_SWETH( 27, 16) = 0.104946E+01 +PKER_SWETH( 27, 17) = 0.974450E+00 +PKER_SWETH( 27, 18) = 0.903983E+00 +PKER_SWETH( 27, 19) = 0.837775E+00 +PKER_SWETH( 27, 20) = 0.775555E+00 +PKER_SWETH( 27, 21) = 0.717072E+00 +PKER_SWETH( 27, 22) = 0.662084E+00 +PKER_SWETH( 27, 23) = 0.610364E+00 +PKER_SWETH( 27, 24) = 0.561694E+00 +PKER_SWETH( 27, 25) = 0.515868E+00 +PKER_SWETH( 27, 26) = 0.472688E+00 +PKER_SWETH( 27, 27) = 0.431963E+00 +PKER_SWETH( 27, 28) = 0.393511E+00 +PKER_SWETH( 27, 29) = 0.357155E+00 +PKER_SWETH( 27, 30) = 0.322725E+00 +PKER_SWETH( 27, 31) = 0.290064E+00 +PKER_SWETH( 27, 32) = 0.259024E+00 +PKER_SWETH( 27, 33) = 0.229483E+00 +PKER_SWETH( 27, 34) = 0.201355E+00 +PKER_SWETH( 27, 35) = 0.174615E+00 +PKER_SWETH( 27, 36) = 0.149334E+00 +PKER_SWETH( 27, 37) = 0.125718E+00 +PKER_SWETH( 27, 38) = 0.104127E+00 +PKER_SWETH( 27, 39) = 0.850544E-01 +PKER_SWETH( 27, 40) = 0.690877E-01 +PKER_SWETH( 27, 41) = 0.567360E-01 +PKER_SWETH( 27, 42) = 0.483077E-01 +PKER_SWETH( 27, 43) = 0.438459E-01 +PKER_SWETH( 27, 44) = 0.430396E-01 +PKER_SWETH( 27, 45) = 0.452998E-01 +PKER_SWETH( 27, 46) = 0.499404E-01 +PKER_SWETH( 27, 47) = 0.562217E-01 +PKER_SWETH( 27, 48) = 0.634525E-01 +PKER_SWETH( 27, 49) = 0.711393E-01 +PKER_SWETH( 27, 50) = 0.788981E-01 +PKER_SWETH( 27, 51) = 0.864846E-01 +PKER_SWETH( 27, 52) = 0.937536E-01 +PKER_SWETH( 27, 53) = 0.100637E+00 +PKER_SWETH( 27, 54) = 0.107111E+00 +PKER_SWETH( 27, 55) = 0.113177E+00 +PKER_SWETH( 27, 56) = 0.118852E+00 +PKER_SWETH( 27, 57) = 0.124158E+00 +PKER_SWETH( 27, 58) = 0.129121E+00 +PKER_SWETH( 27, 59) = 0.133764E+00 +PKER_SWETH( 27, 60) = 0.138109E+00 +PKER_SWETH( 27, 61) = 0.142178E+00 +PKER_SWETH( 27, 62) = 0.145991E+00 +PKER_SWETH( 27, 63) = 0.149563E+00 +PKER_SWETH( 27, 64) = 0.152913E+00 +PKER_SWETH( 27, 65) = 0.156054E+00 +PKER_SWETH( 27, 66) = 0.159000E+00 +PKER_SWETH( 27, 67) = 0.161764E+00 +PKER_SWETH( 27, 68) = 0.164357E+00 +PKER_SWETH( 27, 69) = 0.166791E+00 +PKER_SWETH( 27, 70) = 0.169075E+00 +PKER_SWETH( 27, 71) = 0.171219E+00 +PKER_SWETH( 27, 72) = 0.173231E+00 +PKER_SWETH( 27, 73) = 0.175120E+00 +PKER_SWETH( 27, 74) = 0.176893E+00 +PKER_SWETH( 27, 75) = 0.178558E+00 +PKER_SWETH( 27, 76) = 0.180121E+00 +PKER_SWETH( 27, 77) = 0.181588E+00 +PKER_SWETH( 27, 78) = 0.182966E+00 +PKER_SWETH( 27, 79) = 0.184259E+00 +PKER_SWETH( 27, 80) = 0.185474E+00 +PKER_SWETH( 28, 1) = 0.300292E+01 +PKER_SWETH( 28, 2) = 0.281040E+01 +PKER_SWETH( 28, 3) = 0.262963E+01 +PKER_SWETH( 28, 4) = 0.245988E+01 +PKER_SWETH( 28, 5) = 0.230049E+01 +PKER_SWETH( 28, 6) = 0.215082E+01 +PKER_SWETH( 28, 7) = 0.201028E+01 +PKER_SWETH( 28, 8) = 0.187831E+01 +PKER_SWETH( 28, 9) = 0.175438E+01 +PKER_SWETH( 28, 10) = 0.163802E+01 +PKER_SWETH( 28, 11) = 0.152874E+01 +PKER_SWETH( 28, 12) = 0.142612E+01 +PKER_SWETH( 28, 13) = 0.132976E+01 +PKER_SWETH( 28, 14) = 0.123926E+01 +PKER_SWETH( 28, 15) = 0.115426E+01 +PKER_SWETH( 28, 16) = 0.107444E+01 +PKER_SWETH( 28, 17) = 0.999462E+00 +PKER_SWETH( 28, 18) = 0.929033E+00 +PKER_SWETH( 28, 19) = 0.862870E+00 +PKER_SWETH( 28, 20) = 0.800705E+00 +PKER_SWETH( 28, 21) = 0.742287E+00 +PKER_SWETH( 28, 22) = 0.687378E+00 +PKER_SWETH( 28, 23) = 0.635752E+00 +PKER_SWETH( 28, 24) = 0.587197E+00 +PKER_SWETH( 28, 25) = 0.541509E+00 +PKER_SWETH( 28, 26) = 0.498494E+00 +PKER_SWETH( 28, 27) = 0.457967E+00 +PKER_SWETH( 28, 28) = 0.419751E+00 +PKER_SWETH( 28, 29) = 0.383673E+00 +PKER_SWETH( 28, 30) = 0.349569E+00 +PKER_SWETH( 28, 31) = 0.317283E+00 +PKER_SWETH( 28, 32) = 0.286664E+00 +PKER_SWETH( 28, 33) = 0.257572E+00 +PKER_SWETH( 28, 34) = 0.229887E+00 +PKER_SWETH( 28, 35) = 0.203511E+00 +PKER_SWETH( 28, 36) = 0.178386E+00 +PKER_SWETH( 28, 37) = 0.154515E+00 +PKER_SWETH( 28, 38) = 0.131988E+00 +PKER_SWETH( 28, 39) = 0.111005E+00 +PKER_SWETH( 28, 40) = 0.918807E-01 +PKER_SWETH( 28, 41) = 0.750363E-01 +PKER_SWETH( 28, 42) = 0.609249E-01 +PKER_SWETH( 28, 43) = 0.499395E-01 +PKER_SWETH( 28, 44) = 0.423051E-01 +PKER_SWETH( 28, 45) = 0.380232E-01 +PKER_SWETH( 28, 46) = 0.368477E-01 +PKER_SWETH( 28, 47) = 0.383224E-01 +PKER_SWETH( 28, 48) = 0.418693E-01 +PKER_SWETH( 28, 49) = 0.468853E-01 +PKER_SWETH( 28, 50) = 0.528439E-01 +PKER_SWETH( 28, 51) = 0.592713E-01 +PKER_SWETH( 28, 52) = 0.658408E-01 +PKER_SWETH( 28, 53) = 0.723285E-01 +PKER_SWETH( 28, 54) = 0.785904E-01 +PKER_SWETH( 28, 55) = 0.845537E-01 +PKER_SWETH( 28, 56) = 0.901848E-01 +PKER_SWETH( 28, 57) = 0.954771E-01 +PKER_SWETH( 28, 58) = 0.100439E+00 +PKER_SWETH( 28, 59) = 0.105087E+00 +PKER_SWETH( 28, 60) = 0.109439E+00 +PKER_SWETH( 28, 61) = 0.113515E+00 +PKER_SWETH( 28, 62) = 0.117332E+00 +PKER_SWETH( 28, 63) = 0.120909E+00 +PKER_SWETH( 28, 64) = 0.124262E+00 +PKER_SWETH( 28, 65) = 0.127406E+00 +PKER_SWETH( 28, 66) = 0.130355E+00 +PKER_SWETH( 28, 67) = 0.133120E+00 +PKER_SWETH( 28, 68) = 0.135715E+00 +PKER_SWETH( 28, 69) = 0.138149E+00 +PKER_SWETH( 28, 70) = 0.140434E+00 +PKER_SWETH( 28, 71) = 0.142578E+00 +PKER_SWETH( 28, 72) = 0.144591E+00 +PKER_SWETH( 28, 73) = 0.146480E+00 +PKER_SWETH( 28, 74) = 0.148254E+00 +PKER_SWETH( 28, 75) = 0.149919E+00 +PKER_SWETH( 28, 76) = 0.151482E+00 +PKER_SWETH( 28, 77) = 0.152949E+00 +PKER_SWETH( 28, 78) = 0.154327E+00 +PKER_SWETH( 28, 79) = 0.155621E+00 +PKER_SWETH( 28, 80) = 0.156835E+00 +PKER_SWETH( 29, 1) = 0.302428E+01 +PKER_SWETH( 29, 2) = 0.283176E+01 +PKER_SWETH( 29, 3) = 0.265098E+01 +PKER_SWETH( 29, 4) = 0.248124E+01 +PKER_SWETH( 29, 5) = 0.232185E+01 +PKER_SWETH( 29, 6) = 0.217218E+01 +PKER_SWETH( 29, 7) = 0.203165E+01 +PKER_SWETH( 29, 8) = 0.189968E+01 +PKER_SWETH( 29, 9) = 0.177576E+01 +PKER_SWETH( 29, 10) = 0.165940E+01 +PKER_SWETH( 29, 11) = 0.155013E+01 +PKER_SWETH( 29, 12) = 0.144753E+01 +PKER_SWETH( 29, 13) = 0.135117E+01 +PKER_SWETH( 29, 14) = 0.126068E+01 +PKER_SWETH( 29, 15) = 0.117571E+01 +PKER_SWETH( 29, 16) = 0.109590E+01 +PKER_SWETH( 29, 17) = 0.102095E+01 +PKER_SWETH( 29, 18) = 0.950548E+00 +PKER_SWETH( 29, 19) = 0.884419E+00 +PKER_SWETH( 29, 20) = 0.822295E+00 +PKER_SWETH( 29, 21) = 0.763926E+00 +PKER_SWETH( 29, 22) = 0.709077E+00 +PKER_SWETH( 29, 23) = 0.657523E+00 +PKER_SWETH( 29, 24) = 0.609055E+00 +PKER_SWETH( 29, 25) = 0.563470E+00 +PKER_SWETH( 29, 26) = 0.520580E+00 +PKER_SWETH( 29, 27) = 0.480203E+00 +PKER_SWETH( 29, 28) = 0.442165E+00 +PKER_SWETH( 29, 29) = 0.406299E+00 +PKER_SWETH( 29, 30) = 0.372447E+00 +PKER_SWETH( 29, 31) = 0.340455E+00 +PKER_SWETH( 29, 32) = 0.310175E+00 +PKER_SWETH( 29, 33) = 0.281469E+00 +PKER_SWETH( 29, 34) = 0.254205E+00 +PKER_SWETH( 29, 35) = 0.228266E+00 +PKER_SWETH( 29, 36) = 0.203556E+00 +PKER_SWETH( 29, 37) = 0.180007E+00 +PKER_SWETH( 29, 38) = 0.157592E+00 +PKER_SWETH( 29, 39) = 0.136340E+00 +PKER_SWETH( 29, 40) = 0.116352E+00 +PKER_SWETH( 29, 41) = 0.978136E-01 +PKER_SWETH( 29, 42) = 0.809885E-01 +PKER_SWETH( 29, 43) = 0.662043E-01 +PKER_SWETH( 29, 44) = 0.538061E-01 +PKER_SWETH( 29, 45) = 0.440664E-01 +PKER_SWETH( 29, 46) = 0.371573E-01 +PKER_SWETH( 29, 47) = 0.330684E-01 +PKER_SWETH( 29, 48) = 0.315985E-01 +PKER_SWETH( 29, 49) = 0.324092E-01 +PKER_SWETH( 29, 50) = 0.350441E-01 +PKER_SWETH( 29, 51) = 0.390177E-01 +PKER_SWETH( 29, 52) = 0.438760E-01 +PKER_SWETH( 29, 53) = 0.492363E-01 +PKER_SWETH( 29, 54) = 0.548009E-01 +PKER_SWETH( 29, 55) = 0.603500E-01 +PKER_SWETH( 29, 56) = 0.657504E-01 +PKER_SWETH( 29, 57) = 0.709231E-01 +PKER_SWETH( 29, 58) = 0.758271E-01 +PKER_SWETH( 29, 59) = 0.804506E-01 +PKER_SWETH( 29, 60) = 0.847948E-01 +PKER_SWETH( 29, 61) = 0.888701E-01 +PKER_SWETH( 29, 62) = 0.926906E-01 +PKER_SWETH( 29, 63) = 0.962714E-01 +PKER_SWETH( 29, 64) = 0.996278E-01 +PKER_SWETH( 29, 65) = 0.102775E+00 +PKER_SWETH( 29, 66) = 0.105725E+00 +PKER_SWETH( 29, 67) = 0.108493E+00 +PKER_SWETH( 29, 68) = 0.111089E+00 +PKER_SWETH( 29, 69) = 0.113525E+00 +PKER_SWETH( 29, 70) = 0.115810E+00 +PKER_SWETH( 29, 71) = 0.117955E+00 +PKER_SWETH( 29, 72) = 0.119968E+00 +PKER_SWETH( 29, 73) = 0.121858E+00 +PKER_SWETH( 29, 74) = 0.123632E+00 +PKER_SWETH( 29, 75) = 0.125297E+00 +PKER_SWETH( 29, 76) = 0.126860E+00 +PKER_SWETH( 29, 77) = 0.128328E+00 +PKER_SWETH( 29, 78) = 0.129706E+00 +PKER_SWETH( 29, 79) = 0.130999E+00 +PKER_SWETH( 29, 80) = 0.132214E+00 +PKER_SWETH( 30, 1) = 0.304263E+01 +PKER_SWETH( 30, 2) = 0.285012E+01 +PKER_SWETH( 30, 3) = 0.266934E+01 +PKER_SWETH( 30, 4) = 0.249960E+01 +PKER_SWETH( 30, 5) = 0.234021E+01 +PKER_SWETH( 30, 6) = 0.219055E+01 +PKER_SWETH( 30, 7) = 0.205001E+01 +PKER_SWETH( 30, 8) = 0.191805E+01 +PKER_SWETH( 30, 9) = 0.179414E+01 +PKER_SWETH( 30, 10) = 0.167778E+01 +PKER_SWETH( 30, 11) = 0.156852E+01 +PKER_SWETH( 30, 12) = 0.146592E+01 +PKER_SWETH( 30, 13) = 0.136957E+01 +PKER_SWETH( 30, 14) = 0.127910E+01 +PKER_SWETH( 30, 15) = 0.119413E+01 +PKER_SWETH( 30, 16) = 0.111434E+01 +PKER_SWETH( 30, 17) = 0.103941E+01 +PKER_SWETH( 30, 18) = 0.969029E+00 +PKER_SWETH( 30, 19) = 0.902926E+00 +PKER_SWETH( 30, 20) = 0.840833E+00 +PKER_SWETH( 30, 21) = 0.782502E+00 +PKER_SWETH( 30, 22) = 0.727698E+00 +PKER_SWETH( 30, 23) = 0.676199E+00 +PKER_SWETH( 30, 24) = 0.627795E+00 +PKER_SWETH( 30, 25) = 0.582290E+00 +PKER_SWETH( 30, 26) = 0.539494E+00 +PKER_SWETH( 30, 27) = 0.499230E+00 +PKER_SWETH( 30, 28) = 0.461327E+00 +PKER_SWETH( 30, 29) = 0.425623E+00 +PKER_SWETH( 30, 30) = 0.391964E+00 +PKER_SWETH( 30, 31) = 0.360198E+00 +PKER_SWETH( 30, 32) = 0.330184E+00 +PKER_SWETH( 30, 33) = 0.301784E+00 +PKER_SWETH( 30, 34) = 0.274868E+00 +PKER_SWETH( 30, 35) = 0.249313E+00 +PKER_SWETH( 30, 36) = 0.225011E+00 +PKER_SWETH( 30, 37) = 0.201868E+00 +PKER_SWETH( 30, 38) = 0.179815E+00 +PKER_SWETH( 30, 39) = 0.158815E+00 +PKER_SWETH( 30, 40) = 0.138868E+00 +PKER_SWETH( 30, 41) = 0.120024E+00 +PKER_SWETH( 30, 42) = 0.102388E+00 +PKER_SWETH( 30, 43) = 0.861144E-01 +PKER_SWETH( 30, 44) = 0.714080E-01 +PKER_SWETH( 30, 45) = 0.585069E-01 +PKER_SWETH( 30, 46) = 0.476515E-01 +PKER_SWETH( 30, 47) = 0.390335E-01 +PKER_SWETH( 30, 48) = 0.327743E-01 +PKER_SWETH( 30, 49) = 0.288723E-01 +PKER_SWETH( 30, 50) = 0.271805E-01 +PKER_SWETH( 30, 51) = 0.274431E-01 +PKER_SWETH( 30, 52) = 0.293182E-01 +PKER_SWETH( 30, 53) = 0.324139E-01 +PKER_SWETH( 30, 54) = 0.363508E-01 +PKER_SWETH( 30, 55) = 0.408047E-01 +PKER_SWETH( 30, 56) = 0.455006E-01 +PKER_SWETH( 30, 57) = 0.502456E-01 +PKER_SWETH( 30, 58) = 0.549025E-01 +PKER_SWETH( 30, 59) = 0.593913E-01 +PKER_SWETH( 30, 60) = 0.636662E-01 +PKER_SWETH( 30, 61) = 0.677085E-01 +PKER_SWETH( 30, 62) = 0.715153E-01 +PKER_SWETH( 30, 63) = 0.750918E-01 +PKER_SWETH( 30, 64) = 0.784481E-01 +PKER_SWETH( 30, 65) = 0.815963E-01 +PKER_SWETH( 30, 66) = 0.845489E-01 +PKER_SWETH( 30, 67) = 0.873181E-01 +PKER_SWETH( 30, 68) = 0.899158E-01 +PKER_SWETH( 30, 69) = 0.923528E-01 +PKER_SWETH( 30, 70) = 0.946394E-01 +PKER_SWETH( 30, 71) = 0.967852E-01 +PKER_SWETH( 30, 72) = 0.987990E-01 +PKER_SWETH( 30, 73) = 0.100689E+00 +PKER_SWETH( 30, 74) = 0.102463E+00 +PKER_SWETH( 30, 75) = 0.104129E+00 +PKER_SWETH( 30, 76) = 0.105692E+00 +PKER_SWETH( 30, 77) = 0.107160E+00 +PKER_SWETH( 30, 78) = 0.108538E+00 +PKER_SWETH( 30, 79) = 0.109832E+00 +PKER_SWETH( 30, 80) = 0.111046E+00 +PKER_SWETH( 31, 1) = 0.305841E+01 +PKER_SWETH( 31, 2) = 0.286590E+01 +PKER_SWETH( 31, 3) = 0.268513E+01 +PKER_SWETH( 31, 4) = 0.251539E+01 +PKER_SWETH( 31, 5) = 0.235600E+01 +PKER_SWETH( 31, 6) = 0.220634E+01 +PKER_SWETH( 31, 7) = 0.206581E+01 +PKER_SWETH( 31, 8) = 0.193385E+01 +PKER_SWETH( 31, 9) = 0.180994E+01 +PKER_SWETH( 31, 10) = 0.169358E+01 +PKER_SWETH( 31, 11) = 0.158433E+01 +PKER_SWETH( 31, 12) = 0.148173E+01 +PKER_SWETH( 31, 13) = 0.138539E+01 +PKER_SWETH( 31, 14) = 0.129492E+01 +PKER_SWETH( 31, 15) = 0.120997E+01 +PKER_SWETH( 31, 16) = 0.113019E+01 +PKER_SWETH( 31, 17) = 0.105527E+01 +PKER_SWETH( 31, 18) = 0.984906E+00 +PKER_SWETH( 31, 19) = 0.918822E+00 +PKER_SWETH( 31, 20) = 0.856754E+00 +PKER_SWETH( 31, 21) = 0.798451E+00 +PKER_SWETH( 31, 22) = 0.743681E+00 +PKER_SWETH( 31, 23) = 0.692223E+00 +PKER_SWETH( 31, 24) = 0.643870E+00 +PKER_SWETH( 31, 25) = 0.598424E+00 +PKER_SWETH( 31, 26) = 0.555700E+00 +PKER_SWETH( 31, 27) = 0.515521E+00 +PKER_SWETH( 31, 28) = 0.477722E+00 +PKER_SWETH( 31, 29) = 0.442141E+00 +PKER_SWETH( 31, 30) = 0.408628E+00 +PKER_SWETH( 31, 31) = 0.377036E+00 +PKER_SWETH( 31, 32) = 0.347228E+00 +PKER_SWETH( 31, 33) = 0.319067E+00 +PKER_SWETH( 31, 34) = 0.292428E+00 +PKER_SWETH( 31, 35) = 0.267187E+00 +PKER_SWETH( 31, 36) = 0.243232E+00 +PKER_SWETH( 31, 37) = 0.220461E+00 +PKER_SWETH( 31, 38) = 0.198785E+00 +PKER_SWETH( 31, 39) = 0.178137E+00 +PKER_SWETH( 31, 40) = 0.158477E+00 +PKER_SWETH( 31, 41) = 0.139795E+00 +PKER_SWETH( 31, 42) = 0.122116E+00 +PKER_SWETH( 31, 43) = 0.105498E+00 +PKER_SWETH( 31, 44) = 0.900345E-01 +PKER_SWETH( 31, 45) = 0.758410E-01 +PKER_SWETH( 31, 46) = 0.630589E-01 +PKER_SWETH( 31, 47) = 0.518477E-01 +PKER_SWETH( 31, 48) = 0.423630E-01 +PKER_SWETH( 31, 49) = 0.347372E-01 +PKER_SWETH( 31, 50) = 0.290641E-01 +PKER_SWETH( 31, 51) = 0.253414E-01 +PKER_SWETH( 31, 52) = 0.234859E-01 +PKER_SWETH( 31, 53) = 0.233114E-01 +PKER_SWETH( 31, 54) = 0.245489E-01 +PKER_SWETH( 31, 55) = 0.269042E-01 +PKER_SWETH( 31, 56) = 0.300674E-01 +PKER_SWETH( 31, 57) = 0.337384E-01 +PKER_SWETH( 31, 58) = 0.376964E-01 +PKER_SWETH( 31, 59) = 0.417445E-01 +PKER_SWETH( 31, 60) = 0.457577E-01 +PKER_SWETH( 31, 61) = 0.496524E-01 +PKER_SWETH( 31, 62) = 0.533798E-01 +PKER_SWETH( 31, 63) = 0.569162E-01 +PKER_SWETH( 31, 64) = 0.602537E-01 +PKER_SWETH( 31, 65) = 0.633942E-01 +PKER_SWETH( 31, 66) = 0.663443E-01 +PKER_SWETH( 31, 67) = 0.691135E-01 +PKER_SWETH( 31, 68) = 0.717119E-01 +PKER_SWETH( 31, 69) = 0.741499E-01 +PKER_SWETH( 31, 70) = 0.764375E-01 +PKER_SWETH( 31, 71) = 0.785841E-01 +PKER_SWETH( 31, 72) = 0.805986E-01 +PKER_SWETH( 31, 73) = 0.824892E-01 +PKER_SWETH( 31, 74) = 0.842638E-01 +PKER_SWETH( 31, 75) = 0.859296E-01 +PKER_SWETH( 31, 76) = 0.874932E-01 +PKER_SWETH( 31, 77) = 0.889612E-01 +PKER_SWETH( 31, 78) = 0.903393E-01 +PKER_SWETH( 31, 79) = 0.916331E-01 +PKER_SWETH( 31, 80) = 0.928478E-01 +PKER_SWETH( 32, 1) = 0.307198E+01 +PKER_SWETH( 32, 2) = 0.287947E+01 +PKER_SWETH( 32, 3) = 0.269870E+01 +PKER_SWETH( 32, 4) = 0.252896E+01 +PKER_SWETH( 32, 5) = 0.236957E+01 +PKER_SWETH( 32, 6) = 0.221991E+01 +PKER_SWETH( 32, 7) = 0.207938E+01 +PKER_SWETH( 32, 8) = 0.194742E+01 +PKER_SWETH( 32, 9) = 0.182351E+01 +PKER_SWETH( 32, 10) = 0.170716E+01 +PKER_SWETH( 32, 11) = 0.159791E+01 +PKER_SWETH( 32, 12) = 0.149532E+01 +PKER_SWETH( 32, 13) = 0.139899E+01 +PKER_SWETH( 32, 14) = 0.130853E+01 +PKER_SWETH( 32, 15) = 0.122358E+01 +PKER_SWETH( 32, 16) = 0.114381E+01 +PKER_SWETH( 32, 17) = 0.106890E+01 +PKER_SWETH( 32, 18) = 0.998547E+00 +PKER_SWETH( 32, 19) = 0.932479E+00 +PKER_SWETH( 32, 20) = 0.870428E+00 +PKER_SWETH( 32, 21) = 0.812147E+00 +PKER_SWETH( 32, 22) = 0.757404E+00 +PKER_SWETH( 32, 23) = 0.705977E+00 +PKER_SWETH( 32, 24) = 0.657662E+00 +PKER_SWETH( 32, 25) = 0.612261E+00 +PKER_SWETH( 32, 26) = 0.569591E+00 +PKER_SWETH( 32, 27) = 0.529478E+00 +PKER_SWETH( 32, 28) = 0.491757E+00 +PKER_SWETH( 32, 29) = 0.456270E+00 +PKER_SWETH( 32, 30) = 0.422869E+00 +PKER_SWETH( 32, 31) = 0.391411E+00 +PKER_SWETH( 32, 32) = 0.361760E+00 +PKER_SWETH( 32, 33) = 0.333785E+00 +PKER_SWETH( 32, 34) = 0.307363E+00 +PKER_SWETH( 32, 35) = 0.282372E+00 +PKER_SWETH( 32, 36) = 0.258701E+00 +PKER_SWETH( 32, 37) = 0.236242E+00 +PKER_SWETH( 32, 38) = 0.214902E+00 +PKER_SWETH( 32, 39) = 0.194597E+00 +PKER_SWETH( 32, 40) = 0.175263E+00 +PKER_SWETH( 32, 41) = 0.156861E+00 +PKER_SWETH( 32, 42) = 0.139376E+00 +PKER_SWETH( 32, 43) = 0.122822E+00 +PKER_SWETH( 32, 44) = 0.107235E+00 +PKER_SWETH( 32, 45) = 0.926714E-01 +PKER_SWETH( 32, 46) = 0.791985E-01 +PKER_SWETH( 32, 47) = 0.668908E-01 +PKER_SWETH( 32, 48) = 0.558298E-01 +PKER_SWETH( 32, 49) = 0.461095E-01 +PKER_SWETH( 32, 50) = 0.378288E-01 +PKER_SWETH( 32, 51) = 0.310726E-01 +PKER_SWETH( 32, 52) = 0.259224E-01 +PKER_SWETH( 32, 53) = 0.223881E-01 +PKER_SWETH( 32, 54) = 0.204125E-01 +PKER_SWETH( 32, 55) = 0.198855E-01 +PKER_SWETH( 32, 56) = 0.206112E-01 +PKER_SWETH( 32, 57) = 0.223423E-01 +PKER_SWETH( 32, 58) = 0.248393E-01 +PKER_SWETH( 32, 59) = 0.278564E-01 +PKER_SWETH( 32, 60) = 0.311658E-01 +PKER_SWETH( 32, 61) = 0.346111E-01 +PKER_SWETH( 32, 62) = 0.380645E-01 +PKER_SWETH( 32, 63) = 0.414420E-01 +PKER_SWETH( 32, 64) = 0.446910E-01 +PKER_SWETH( 32, 65) = 0.477849E-01 +PKER_SWETH( 32, 66) = 0.507120E-01 +PKER_SWETH( 32, 67) = 0.534705E-01 +PKER_SWETH( 32, 68) = 0.560645E-01 +PKER_SWETH( 32, 69) = 0.585012E-01 +PKER_SWETH( 32, 70) = 0.607887E-01 +PKER_SWETH( 32, 71) = 0.629357E-01 +PKER_SWETH( 32, 72) = 0.649507E-01 +PKER_SWETH( 32, 73) = 0.668419E-01 +PKER_SWETH( 32, 74) = 0.686169E-01 +PKER_SWETH( 32, 75) = 0.702830E-01 +PKER_SWETH( 32, 76) = 0.718470E-01 +PKER_SWETH( 32, 77) = 0.733151E-01 +PKER_SWETH( 32, 78) = 0.746934E-01 +PKER_SWETH( 32, 79) = 0.759873E-01 +PKER_SWETH( 32, 80) = 0.772022E-01 +PKER_SWETH( 33, 1) = 0.308365E+01 +PKER_SWETH( 33, 2) = 0.289113E+01 +PKER_SWETH( 33, 3) = 0.271036E+01 +PKER_SWETH( 33, 4) = 0.254062E+01 +PKER_SWETH( 33, 5) = 0.238124E+01 +PKER_SWETH( 33, 6) = 0.223158E+01 +PKER_SWETH( 33, 7) = 0.209105E+01 +PKER_SWETH( 33, 8) = 0.195909E+01 +PKER_SWETH( 33, 9) = 0.183519E+01 +PKER_SWETH( 33, 10) = 0.171884E+01 +PKER_SWETH( 33, 11) = 0.160959E+01 +PKER_SWETH( 33, 12) = 0.150700E+01 +PKER_SWETH( 33, 13) = 0.141067E+01 +PKER_SWETH( 33, 14) = 0.132022E+01 +PKER_SWETH( 33, 15) = 0.123527E+01 +PKER_SWETH( 33, 16) = 0.115551E+01 +PKER_SWETH( 33, 17) = 0.108061E+01 +PKER_SWETH( 33, 18) = 0.101027E+01 +PKER_SWETH( 33, 19) = 0.944211E+00 +PKER_SWETH( 33, 20) = 0.882174E+00 +PKER_SWETH( 33, 21) = 0.823911E+00 +PKER_SWETH( 33, 22) = 0.769187E+00 +PKER_SWETH( 33, 23) = 0.717785E+00 +PKER_SWETH( 33, 24) = 0.669498E+00 +PKER_SWETH( 33, 25) = 0.624132E+00 +PKER_SWETH( 33, 26) = 0.581504E+00 +PKER_SWETH( 33, 27) = 0.541441E+00 +PKER_SWETH( 33, 28) = 0.503779E+00 +PKER_SWETH( 33, 29) = 0.468364E+00 +PKER_SWETH( 33, 30) = 0.435048E+00 +PKER_SWETH( 33, 31) = 0.403692E+00 +PKER_SWETH( 33, 32) = 0.374162E+00 +PKER_SWETH( 33, 33) = 0.346331E+00 +PKER_SWETH( 33, 34) = 0.320078E+00 +PKER_SWETH( 33, 35) = 0.295284E+00 +PKER_SWETH( 33, 36) = 0.271839E+00 +PKER_SWETH( 33, 37) = 0.249637E+00 +PKER_SWETH( 33, 38) = 0.228579E+00 +PKER_SWETH( 33, 39) = 0.208576E+00 +PKER_SWETH( 33, 40) = 0.189552E+00 +PKER_SWETH( 33, 41) = 0.171446E+00 +PKER_SWETH( 33, 42) = 0.154219E+00 +PKER_SWETH( 33, 43) = 0.137857E+00 +PKER_SWETH( 33, 44) = 0.122365E+00 +PKER_SWETH( 33, 45) = 0.107772E+00 +PKER_SWETH( 33, 46) = 0.941135E-01 +PKER_SWETH( 33, 47) = 0.814306E-01 +PKER_SWETH( 33, 48) = 0.697596E-01 +PKER_SWETH( 33, 49) = 0.591329E-01 +PKER_SWETH( 33, 50) = 0.495874E-01 +PKER_SWETH( 33, 51) = 0.411680E-01 +PKER_SWETH( 33, 52) = 0.339301E-01 +PKER_SWETH( 33, 53) = 0.279413E-01 +PKER_SWETH( 33, 54) = 0.232585E-01 +PKER_SWETH( 33, 55) = 0.199094E-01 +PKER_SWETH( 33, 56) = 0.178713E-01 +PKER_SWETH( 33, 57) = 0.170702E-01 +PKER_SWETH( 33, 58) = 0.173718E-01 +PKER_SWETH( 33, 59) = 0.185930E-01 +PKER_SWETH( 33, 60) = 0.205264E-01 +PKER_SWETH( 33, 61) = 0.229634E-01 +PKER_SWETH( 33, 62) = 0.257251E-01 +PKER_SWETH( 33, 63) = 0.286451E-01 +PKER_SWETH( 33, 64) = 0.316079E-01 +PKER_SWETH( 33, 65) = 0.345319E-01 +PKER_SWETH( 33, 66) = 0.373616E-01 +PKER_SWETH( 33, 67) = 0.400676E-01 +PKER_SWETH( 33, 68) = 0.426346E-01 +PKER_SWETH( 33, 69) = 0.450580E-01 +PKER_SWETH( 33, 70) = 0.473394E-01 +PKER_SWETH( 33, 71) = 0.494840E-01 +PKER_SWETH( 33, 72) = 0.514983E-01 +PKER_SWETH( 33, 73) = 0.533894E-01 +PKER_SWETH( 33, 74) = 0.551646E-01 +PKER_SWETH( 33, 75) = 0.568310E-01 +PKER_SWETH( 33, 76) = 0.583952E-01 +PKER_SWETH( 33, 77) = 0.598636E-01 +PKER_SWETH( 33, 78) = 0.612421E-01 +PKER_SWETH( 33, 79) = 0.625362E-01 +PKER_SWETH( 33, 80) = 0.637511E-01 +PKER_SWETH( 34, 1) = 0.309367E+01 +PKER_SWETH( 34, 2) = 0.290116E+01 +PKER_SWETH( 34, 3) = 0.272039E+01 +PKER_SWETH( 34, 4) = 0.255065E+01 +PKER_SWETH( 34, 5) = 0.239127E+01 +PKER_SWETH( 34, 6) = 0.224161E+01 +PKER_SWETH( 34, 7) = 0.210108E+01 +PKER_SWETH( 34, 8) = 0.196913E+01 +PKER_SWETH( 34, 9) = 0.184522E+01 +PKER_SWETH( 34, 10) = 0.172888E+01 +PKER_SWETH( 34, 11) = 0.161963E+01 +PKER_SWETH( 34, 12) = 0.151704E+01 +PKER_SWETH( 34, 13) = 0.142072E+01 +PKER_SWETH( 34, 14) = 0.133026E+01 +PKER_SWETH( 34, 15) = 0.124533E+01 +PKER_SWETH( 34, 16) = 0.116557E+01 +PKER_SWETH( 34, 17) = 0.109067E+01 +PKER_SWETH( 34, 18) = 0.102034E+01 +PKER_SWETH( 34, 19) = 0.954292E+00 +PKER_SWETH( 34, 20) = 0.892266E+00 +PKER_SWETH( 34, 21) = 0.834015E+00 +PKER_SWETH( 34, 22) = 0.779307E+00 +PKER_SWETH( 34, 23) = 0.727923E+00 +PKER_SWETH( 34, 24) = 0.679659E+00 +PKER_SWETH( 34, 25) = 0.634319E+00 +PKER_SWETH( 34, 26) = 0.591723E+00 +PKER_SWETH( 34, 27) = 0.551698E+00 +PKER_SWETH( 34, 28) = 0.514082E+00 +PKER_SWETH( 34, 29) = 0.478721E+00 +PKER_SWETH( 34, 30) = 0.445471E+00 +PKER_SWETH( 34, 31) = 0.414193E+00 +PKER_SWETH( 34, 32) = 0.384756E+00 +PKER_SWETH( 34, 33) = 0.357036E+00 +PKER_SWETH( 34, 34) = 0.330913E+00 +PKER_SWETH( 34, 35) = 0.306273E+00 +PKER_SWETH( 34, 36) = 0.283006E+00 +PKER_SWETH( 34, 37) = 0.261009E+00 +PKER_SWETH( 34, 38) = 0.240184E+00 +PKER_SWETH( 34, 39) = 0.220436E+00 +PKER_SWETH( 34, 40) = 0.201685E+00 +PKER_SWETH( 34, 41) = 0.183858E+00 +PKER_SWETH( 34, 42) = 0.166898E+00 +PKER_SWETH( 34, 43) = 0.150769E+00 +PKER_SWETH( 34, 44) = 0.135455E+00 +PKER_SWETH( 34, 45) = 0.120960E+00 +PKER_SWETH( 34, 46) = 0.107304E+00 +PKER_SWETH( 34, 47) = 0.945159E-01 +PKER_SWETH( 34, 48) = 0.826218E-01 +PKER_SWETH( 34, 49) = 0.716384E-01 +PKER_SWETH( 34, 50) = 0.615720E-01 +PKER_SWETH( 34, 51) = 0.524221E-01 +PKER_SWETH( 34, 52) = 0.441914E-01 +PKER_SWETH( 34, 53) = 0.368950E-01 +PKER_SWETH( 34, 54) = 0.305630E-01 +PKER_SWETH( 34, 55) = 0.252431E-01 +PKER_SWETH( 34, 56) = 0.209881E-01 +PKER_SWETH( 34, 57) = 0.178255E-01 +PKER_SWETH( 34, 58) = 0.157648E-01 +PKER_SWETH( 34, 59) = 0.147630E-01 +PKER_SWETH( 34, 60) = 0.147237E-01 +PKER_SWETH( 34, 61) = 0.155170E-01 +PKER_SWETH( 34, 62) = 0.169756E-01 +PKER_SWETH( 34, 63) = 0.189247E-01 +PKER_SWETH( 34, 64) = 0.212006E-01 +PKER_SWETH( 34, 65) = 0.236626E-01 +PKER_SWETH( 34, 66) = 0.261994E-01 +PKER_SWETH( 34, 67) = 0.287254E-01 +PKER_SWETH( 34, 68) = 0.311875E-01 +PKER_SWETH( 34, 69) = 0.335528E-01 +PKER_SWETH( 34, 70) = 0.358031E-01 +PKER_SWETH( 34, 71) = 0.379320E-01 +PKER_SWETH( 34, 72) = 0.399386E-01 +PKER_SWETH( 34, 73) = 0.418263E-01 +PKER_SWETH( 34, 74) = 0.436002E-01 +PKER_SWETH( 34, 75) = 0.452662E-01 +PKER_SWETH( 34, 76) = 0.468304E-01 +PKER_SWETH( 34, 77) = 0.482989E-01 +PKER_SWETH( 34, 78) = 0.496775E-01 +PKER_SWETH( 34, 79) = 0.509718E-01 +PKER_SWETH( 34, 80) = 0.521868E-01 +PKER_SWETH( 35, 1) = 0.310229E+01 +PKER_SWETH( 35, 2) = 0.290978E+01 +PKER_SWETH( 35, 3) = 0.272901E+01 +PKER_SWETH( 35, 4) = 0.255927E+01 +PKER_SWETH( 35, 5) = 0.239989E+01 +PKER_SWETH( 35, 6) = 0.225023E+01 +PKER_SWETH( 35, 7) = 0.210971E+01 +PKER_SWETH( 35, 8) = 0.197775E+01 +PKER_SWETH( 35, 9) = 0.185385E+01 +PKER_SWETH( 35, 10) = 0.173750E+01 +PKER_SWETH( 35, 11) = 0.162826E+01 +PKER_SWETH( 35, 12) = 0.152568E+01 +PKER_SWETH( 35, 13) = 0.142935E+01 +PKER_SWETH( 35, 14) = 0.133890E+01 +PKER_SWETH( 35, 15) = 0.125397E+01 +PKER_SWETH( 35, 16) = 0.117421E+01 +PKER_SWETH( 35, 17) = 0.109932E+01 +PKER_SWETH( 35, 18) = 0.102899E+01 +PKER_SWETH( 35, 19) = 0.962954E+00 +PKER_SWETH( 35, 20) = 0.900936E+00 +PKER_SWETH( 35, 21) = 0.842695E+00 +PKER_SWETH( 35, 22) = 0.787999E+00 +PKER_SWETH( 35, 23) = 0.736630E+00 +PKER_SWETH( 35, 24) = 0.688382E+00 +PKER_SWETH( 35, 25) = 0.643063E+00 +PKER_SWETH( 35, 26) = 0.600491E+00 +PKER_SWETH( 35, 27) = 0.560496E+00 +PKER_SWETH( 35, 28) = 0.522915E+00 +PKER_SWETH( 35, 29) = 0.487596E+00 +PKER_SWETH( 35, 30) = 0.454396E+00 +PKER_SWETH( 35, 31) = 0.423178E+00 +PKER_SWETH( 35, 32) = 0.393812E+00 +PKER_SWETH( 35, 33) = 0.366177E+00 +PKER_SWETH( 35, 34) = 0.340155E+00 +PKER_SWETH( 35, 35) = 0.315634E+00 +PKER_SWETH( 35, 36) = 0.292507E+00 +PKER_SWETH( 35, 37) = 0.270673E+00 +PKER_SWETH( 35, 38) = 0.250034E+00 +PKER_SWETH( 35, 39) = 0.230497E+00 +PKER_SWETH( 35, 40) = 0.211978E+00 +PKER_SWETH( 35, 41) = 0.194397E+00 +PKER_SWETH( 35, 42) = 0.177688E+00 +PKER_SWETH( 35, 43) = 0.161799E+00 +PKER_SWETH( 35, 44) = 0.146695E+00 +PKER_SWETH( 35, 45) = 0.132358E+00 +PKER_SWETH( 35, 46) = 0.118793E+00 +PKER_SWETH( 35, 47) = 0.106016E+00 +PKER_SWETH( 35, 48) = 0.940490E-01 +PKER_SWETH( 35, 49) = 0.829116E-01 +PKER_SWETH( 35, 50) = 0.726109E-01 +PKER_SWETH( 35, 51) = 0.631403E-01 +PKER_SWETH( 35, 52) = 0.544809E-01 +PKER_SWETH( 35, 53) = 0.466098E-01 +PKER_SWETH( 35, 54) = 0.395099E-01 +PKER_SWETH( 35, 55) = 0.331777E-01 +PKER_SWETH( 35, 56) = 0.276290E-01 +PKER_SWETH( 35, 57) = 0.228990E-01 +PKER_SWETH( 35, 58) = 0.190322E-01 +PKER_SWETH( 35, 59) = 0.160626E-01 +PKER_SWETH( 35, 60) = 0.140126E-01 +PKER_SWETH( 35, 61) = 0.128671E-01 +PKER_SWETH( 35, 62) = 0.125631E-01 +PKER_SWETH( 35, 63) = 0.130040E-01 +PKER_SWETH( 35, 64) = 0.140640E-01 +PKER_SWETH( 35, 65) = 0.155956E-01 +PKER_SWETH( 35, 66) = 0.174553E-01 +PKER_SWETH( 35, 67) = 0.195193E-01 +PKER_SWETH( 35, 68) = 0.216784E-01 +PKER_SWETH( 35, 69) = 0.238555E-01 +PKER_SWETH( 35, 70) = 0.259938E-01 +PKER_SWETH( 35, 71) = 0.280589E-01 +PKER_SWETH( 35, 72) = 0.300308E-01 +PKER_SWETH( 35, 73) = 0.319003E-01 +PKER_SWETH( 35, 74) = 0.336651E-01 +PKER_SWETH( 35, 75) = 0.353268E-01 +PKER_SWETH( 35, 76) = 0.368892E-01 +PKER_SWETH( 35, 77) = 0.383569E-01 +PKER_SWETH( 35, 78) = 0.397353E-01 +PKER_SWETH( 35, 79) = 0.410295E-01 +PKER_SWETH( 35, 80) = 0.422447E-01 +PKER_SWETH( 36, 1) = 0.310970E+01 +PKER_SWETH( 36, 2) = 0.291719E+01 +PKER_SWETH( 36, 3) = 0.273642E+01 +PKER_SWETH( 36, 4) = 0.256668E+01 +PKER_SWETH( 36, 5) = 0.240730E+01 +PKER_SWETH( 36, 6) = 0.225765E+01 +PKER_SWETH( 36, 7) = 0.211712E+01 +PKER_SWETH( 36, 8) = 0.198517E+01 +PKER_SWETH( 36, 9) = 0.186126E+01 +PKER_SWETH( 36, 10) = 0.174492E+01 +PKER_SWETH( 36, 11) = 0.163568E+01 +PKER_SWETH( 36, 12) = 0.153310E+01 +PKER_SWETH( 36, 13) = 0.143677E+01 +PKER_SWETH( 36, 14) = 0.134632E+01 +PKER_SWETH( 36, 15) = 0.126139E+01 +PKER_SWETH( 36, 16) = 0.118164E+01 +PKER_SWETH( 36, 17) = 0.110675E+01 +PKER_SWETH( 36, 18) = 0.103643E+01 +PKER_SWETH( 36, 19) = 0.970397E+00 +PKER_SWETH( 36, 20) = 0.908386E+00 +PKER_SWETH( 36, 21) = 0.850153E+00 +PKER_SWETH( 36, 22) = 0.795466E+00 +PKER_SWETH( 36, 23) = 0.744108E+00 +PKER_SWETH( 36, 24) = 0.695873E+00 +PKER_SWETH( 36, 25) = 0.650570E+00 +PKER_SWETH( 36, 26) = 0.608017E+00 +PKER_SWETH( 36, 27) = 0.568044E+00 +PKER_SWETH( 36, 28) = 0.530490E+00 +PKER_SWETH( 36, 29) = 0.495203E+00 +PKER_SWETH( 36, 30) = 0.462042E+00 +PKER_SWETH( 36, 31) = 0.430869E+00 +PKER_SWETH( 36, 32) = 0.401559E+00 +PKER_SWETH( 36, 33) = 0.373989E+00 +PKER_SWETH( 36, 34) = 0.348045E+00 +PKER_SWETH( 36, 35) = 0.323616E+00 +PKER_SWETH( 36, 36) = 0.300599E+00 +PKER_SWETH( 36, 37) = 0.278892E+00 +PKER_SWETH( 36, 38) = 0.258401E+00 +PKER_SWETH( 36, 39) = 0.239034E+00 +PKER_SWETH( 36, 40) = 0.220706E+00 +PKER_SWETH( 36, 41) = 0.203335E+00 +PKER_SWETH( 36, 42) = 0.186850E+00 +PKER_SWETH( 36, 43) = 0.171188E+00 +PKER_SWETH( 36, 44) = 0.156300E+00 +PKER_SWETH( 36, 45) = 0.142151E+00 +PKER_SWETH( 36, 46) = 0.128727E+00 +PKER_SWETH( 36, 47) = 0.116029E+00 +PKER_SWETH( 36, 48) = 0.104072E+00 +PKER_SWETH( 36, 49) = 0.928735E-01 +PKER_SWETH( 36, 50) = 0.824495E-01 +PKER_SWETH( 36, 51) = 0.728026E-01 +PKER_SWETH( 36, 52) = 0.639198E-01 +PKER_SWETH( 36, 53) = 0.557752E-01 +PKER_SWETH( 36, 54) = 0.483333E-01 +PKER_SWETH( 36, 55) = 0.415587E-01 +PKER_SWETH( 36, 56) = 0.354254E-01 +PKER_SWETH( 36, 57) = 0.299195E-01 +PKER_SWETH( 36, 58) = 0.250483E-01 +PKER_SWETH( 36, 59) = 0.208397E-01 +PKER_SWETH( 36, 60) = 0.173299E-01 +PKER_SWETH( 36, 61) = 0.145557E-01 +PKER_SWETH( 36, 62) = 0.125495E-01 +PKER_SWETH( 36, 63) = 0.113080E-01 +PKER_SWETH( 36, 64) = 0.108016E-01 +PKER_SWETH( 36, 65) = 0.109613E-01 +PKER_SWETH( 36, 66) = 0.116849E-01 +PKER_SWETH( 36, 67) = 0.128598E-01 +PKER_SWETH( 36, 68) = 0.143640E-01 +PKER_SWETH( 36, 69) = 0.160768E-01 +PKER_SWETH( 36, 70) = 0.179090E-01 +PKER_SWETH( 36, 71) = 0.197779E-01 +PKER_SWETH( 36, 72) = 0.216309E-01 +PKER_SWETH( 36, 73) = 0.234315E-01 +PKER_SWETH( 36, 74) = 0.251579E-01 +PKER_SWETH( 36, 75) = 0.267991E-01 +PKER_SWETH( 36, 76) = 0.283509E-01 +PKER_SWETH( 36, 77) = 0.298135E-01 +PKER_SWETH( 36, 78) = 0.311895E-01 +PKER_SWETH( 36, 79) = 0.324827E-01 +PKER_SWETH( 36, 80) = 0.336974E-01 +PKER_SWETH( 37, 1) = 0.311608E+01 +PKER_SWETH( 37, 2) = 0.292356E+01 +PKER_SWETH( 37, 3) = 0.274280E+01 +PKER_SWETH( 37, 4) = 0.257306E+01 +PKER_SWETH( 37, 5) = 0.241368E+01 +PKER_SWETH( 37, 6) = 0.226402E+01 +PKER_SWETH( 37, 7) = 0.212349E+01 +PKER_SWETH( 37, 8) = 0.199154E+01 +PKER_SWETH( 37, 9) = 0.186764E+01 +PKER_SWETH( 37, 10) = 0.175130E+01 +PKER_SWETH( 37, 11) = 0.164205E+01 +PKER_SWETH( 37, 12) = 0.153947E+01 +PKER_SWETH( 37, 13) = 0.144315E+01 +PKER_SWETH( 37, 14) = 0.135271E+01 +PKER_SWETH( 37, 15) = 0.126778E+01 +PKER_SWETH( 37, 16) = 0.118803E+01 +PKER_SWETH( 37, 17) = 0.111314E+01 +PKER_SWETH( 37, 18) = 0.104282E+01 +PKER_SWETH( 37, 19) = 0.976794E+00 +PKER_SWETH( 37, 20) = 0.914788E+00 +PKER_SWETH( 37, 21) = 0.856560E+00 +PKER_SWETH( 37, 22) = 0.801881E+00 +PKER_SWETH( 37, 23) = 0.750531E+00 +PKER_SWETH( 37, 24) = 0.702307E+00 +PKER_SWETH( 37, 25) = 0.657016E+00 +PKER_SWETH( 37, 26) = 0.614477E+00 +PKER_SWETH( 37, 27) = 0.574521E+00 +PKER_SWETH( 37, 28) = 0.536988E+00 +PKER_SWETH( 37, 29) = 0.501726E+00 +PKER_SWETH( 37, 30) = 0.468594E+00 +PKER_SWETH( 37, 31) = 0.437458E+00 +PKER_SWETH( 37, 32) = 0.408190E+00 +PKER_SWETH( 37, 33) = 0.380671E+00 +PKER_SWETH( 37, 34) = 0.354786E+00 +PKER_SWETH( 37, 35) = 0.330429E+00 +PKER_SWETH( 37, 36) = 0.307496E+00 +PKER_SWETH( 37, 37) = 0.285889E+00 +PKER_SWETH( 37, 38) = 0.265514E+00 +PKER_SWETH( 37, 39) = 0.246283E+00 +PKER_SWETH( 37, 40) = 0.228109E+00 +PKER_SWETH( 37, 41) = 0.210913E+00 +PKER_SWETH( 37, 42) = 0.194619E+00 +PKER_SWETH( 37, 43) = 0.179160E+00 +PKER_SWETH( 37, 44) = 0.164477E+00 +PKER_SWETH( 37, 45) = 0.150523E+00 +PKER_SWETH( 37, 46) = 0.137268E+00 +PKER_SWETH( 37, 47) = 0.124695E+00 +PKER_SWETH( 37, 48) = 0.112806E+00 +PKER_SWETH( 37, 49) = 0.101613E+00 +PKER_SWETH( 37, 50) = 0.911322E-01 +PKER_SWETH( 37, 51) = 0.813759E-01 +PKER_SWETH( 37, 52) = 0.723446E-01 +PKER_SWETH( 37, 53) = 0.640238E-01 +PKER_SWETH( 37, 54) = 0.563838E-01 +PKER_SWETH( 37, 55) = 0.493857E-01 +PKER_SWETH( 37, 56) = 0.429865E-01 +PKER_SWETH( 37, 57) = 0.371471E-01 +PKER_SWETH( 37, 58) = 0.318367E-01 +PKER_SWETH( 37, 59) = 0.270401E-01 +PKER_SWETH( 37, 60) = 0.227582E-01 +PKER_SWETH( 37, 61) = 0.190115E-01 +PKER_SWETH( 37, 62) = 0.158324E-01 +PKER_SWETH( 37, 63) = 0.132541E-01 +PKER_SWETH( 37, 64) = 0.113154E-01 +PKER_SWETH( 37, 65) = 0.100251E-01 +PKER_SWETH( 37, 66) = 0.936563E-02 +PKER_SWETH( 37, 67) = 0.929977E-02 +PKER_SWETH( 37, 68) = 0.975168E-02 +PKER_SWETH( 37, 69) = 0.106226E-01 +PKER_SWETH( 37, 70) = 0.118165E-01 +PKER_SWETH( 37, 71) = 0.132315E-01 +PKER_SWETH( 37, 72) = 0.147715E-01 +PKER_SWETH( 37, 73) = 0.163699E-01 +PKER_SWETH( 37, 74) = 0.179714E-01 +PKER_SWETH( 37, 75) = 0.195388E-01 +PKER_SWETH( 37, 76) = 0.210485E-01 +PKER_SWETH( 37, 77) = 0.224882E-01 +PKER_SWETH( 37, 78) = 0.238523E-01 +PKER_SWETH( 37, 79) = 0.251394E-01 +PKER_SWETH( 37, 80) = 0.263512E-01 +PKER_SWETH( 38, 1) = 0.312155E+01 +PKER_SWETH( 38, 2) = 0.292904E+01 +PKER_SWETH( 38, 3) = 0.274827E+01 +PKER_SWETH( 38, 4) = 0.257854E+01 +PKER_SWETH( 38, 5) = 0.241915E+01 +PKER_SWETH( 38, 6) = 0.226950E+01 +PKER_SWETH( 38, 7) = 0.212897E+01 +PKER_SWETH( 38, 8) = 0.199702E+01 +PKER_SWETH( 38, 9) = 0.187312E+01 +PKER_SWETH( 38, 10) = 0.175678E+01 +PKER_SWETH( 38, 11) = 0.164753E+01 +PKER_SWETH( 38, 12) = 0.154496E+01 +PKER_SWETH( 38, 13) = 0.144864E+01 +PKER_SWETH( 38, 14) = 0.135819E+01 +PKER_SWETH( 38, 15) = 0.127326E+01 +PKER_SWETH( 38, 16) = 0.119352E+01 +PKER_SWETH( 38, 17) = 0.111863E+01 +PKER_SWETH( 38, 18) = 0.104832E+01 +PKER_SWETH( 38, 19) = 0.982291E+00 +PKER_SWETH( 38, 20) = 0.920289E+00 +PKER_SWETH( 38, 21) = 0.862066E+00 +PKER_SWETH( 38, 22) = 0.807392E+00 +PKER_SWETH( 38, 23) = 0.756049E+00 +PKER_SWETH( 38, 24) = 0.707832E+00 +PKER_SWETH( 38, 25) = 0.662551E+00 +PKER_SWETH( 38, 26) = 0.620024E+00 +PKER_SWETH( 38, 27) = 0.580081E+00 +PKER_SWETH( 38, 28) = 0.542564E+00 +PKER_SWETH( 38, 29) = 0.507322E+00 +PKER_SWETH( 38, 30) = 0.474213E+00 +PKER_SWETH( 38, 31) = 0.443103E+00 +PKER_SWETH( 38, 32) = 0.413868E+00 +PKER_SWETH( 38, 33) = 0.386388E+00 +PKER_SWETH( 38, 34) = 0.360550E+00 +PKER_SWETH( 38, 35) = 0.336248E+00 +PKER_SWETH( 38, 36) = 0.313380E+00 +PKER_SWETH( 38, 37) = 0.291851E+00 +PKER_SWETH( 38, 38) = 0.271567E+00 +PKER_SWETH( 38, 39) = 0.252443E+00 +PKER_SWETH( 38, 40) = 0.234393E+00 +PKER_SWETH( 38, 41) = 0.217338E+00 +PKER_SWETH( 38, 42) = 0.201203E+00 +PKER_SWETH( 38, 43) = 0.185918E+00 +PKER_SWETH( 38, 44) = 0.171419E+00 +PKER_SWETH( 38, 45) = 0.157652E+00 +PKER_SWETH( 38, 46) = 0.144573E+00 +PKER_SWETH( 38, 47) = 0.132151E+00 +PKER_SWETH( 38, 48) = 0.120374E+00 +PKER_SWETH( 38, 49) = 0.109240E+00 +PKER_SWETH( 38, 50) = 0.987594E-01 +PKER_SWETH( 38, 51) = 0.889476E-01 +PKER_SWETH( 38, 52) = 0.798146E-01 +PKER_SWETH( 38, 53) = 0.713596E-01 +PKER_SWETH( 38, 54) = 0.635674E-01 +PKER_SWETH( 38, 55) = 0.564087E-01 +PKER_SWETH( 38, 56) = 0.498437E-01 +PKER_SWETH( 38, 57) = 0.438276E-01 +PKER_SWETH( 38, 58) = 0.383165E-01 +PKER_SWETH( 38, 59) = 0.332715E-01 +PKER_SWETH( 38, 60) = 0.286636E-01 +PKER_SWETH( 38, 61) = 0.244758E-01 +PKER_SWETH( 38, 62) = 0.207079E-01 +PKER_SWETH( 38, 63) = 0.173736E-01 +PKER_SWETH( 38, 64) = 0.144984E-01 +PKER_SWETH( 38, 65) = 0.121181E-01 +PKER_SWETH( 38, 66) = 0.102648E-01 +PKER_SWETH( 38, 67) = 0.895844E-02 +PKER_SWETH( 38, 68) = 0.819655E-02 +PKER_SWETH( 38, 69) = 0.795499E-02 +PKER_SWETH( 38, 70) = 0.818194E-02 +PKER_SWETH( 38, 71) = 0.880268E-02 +PKER_SWETH( 38, 72) = 0.973113E-02 +PKER_SWETH( 38, 73) = 0.108789E-01 +PKER_SWETH( 38, 74) = 0.121690E-01 +PKER_SWETH( 38, 75) = 0.135287E-01 +PKER_SWETH( 38, 76) = 0.149074E-01 +PKER_SWETH( 38, 77) = 0.162683E-01 +PKER_SWETH( 38, 78) = 0.175866E-01 +PKER_SWETH( 38, 79) = 0.188485E-01 +PKER_SWETH( 38, 80) = 0.200469E-01 +PKER_SWETH( 39, 1) = 0.312626E+01 +PKER_SWETH( 39, 2) = 0.293375E+01 +PKER_SWETH( 39, 3) = 0.275298E+01 +PKER_SWETH( 39, 4) = 0.258325E+01 +PKER_SWETH( 39, 5) = 0.242386E+01 +PKER_SWETH( 39, 6) = 0.227421E+01 +PKER_SWETH( 39, 7) = 0.213368E+01 +PKER_SWETH( 39, 8) = 0.200173E+01 +PKER_SWETH( 39, 9) = 0.187783E+01 +PKER_SWETH( 39, 10) = 0.176149E+01 +PKER_SWETH( 39, 11) = 0.165225E+01 +PKER_SWETH( 39, 12) = 0.154967E+01 +PKER_SWETH( 39, 13) = 0.145335E+01 +PKER_SWETH( 39, 14) = 0.136291E+01 +PKER_SWETH( 39, 15) = 0.127798E+01 +PKER_SWETH( 39, 16) = 0.119824E+01 +PKER_SWETH( 39, 17) = 0.112335E+01 +PKER_SWETH( 39, 18) = 0.105304E+01 +PKER_SWETH( 39, 19) = 0.987015E+00 +PKER_SWETH( 39, 20) = 0.925016E+00 +PKER_SWETH( 39, 21) = 0.866797E+00 +PKER_SWETH( 39, 22) = 0.812128E+00 +PKER_SWETH( 39, 23) = 0.760790E+00 +PKER_SWETH( 39, 24) = 0.712579E+00 +PKER_SWETH( 39, 25) = 0.667305E+00 +PKER_SWETH( 39, 26) = 0.624787E+00 +PKER_SWETH( 39, 27) = 0.584855E+00 +PKER_SWETH( 39, 28) = 0.547350E+00 +PKER_SWETH( 39, 29) = 0.512122E+00 +PKER_SWETH( 39, 30) = 0.479031E+00 +PKER_SWETH( 39, 31) = 0.447943E+00 +PKER_SWETH( 39, 32) = 0.418733E+00 +PKER_SWETH( 39, 33) = 0.391283E+00 +PKER_SWETH( 39, 34) = 0.365481E+00 +PKER_SWETH( 39, 35) = 0.341221E+00 +PKER_SWETH( 39, 36) = 0.318405E+00 +PKER_SWETH( 39, 37) = 0.296935E+00 +PKER_SWETH( 39, 38) = 0.276723E+00 +PKER_SWETH( 39, 39) = 0.257682E+00 +PKER_SWETH( 39, 40) = 0.239730E+00 +PKER_SWETH( 39, 41) = 0.222789E+00 +PKER_SWETH( 39, 42) = 0.206783E+00 +PKER_SWETH( 39, 43) = 0.191643E+00 +PKER_SWETH( 39, 44) = 0.177303E+00 +PKER_SWETH( 39, 45) = 0.163704E+00 +PKER_SWETH( 39, 46) = 0.150794E+00 +PKER_SWETH( 39, 47) = 0.138532E+00 +PKER_SWETH( 39, 48) = 0.126891E+00 +PKER_SWETH( 39, 49) = 0.115856E+00 +PKER_SWETH( 39, 50) = 0.105427E+00 +PKER_SWETH( 39, 51) = 0.956115E-01 +PKER_SWETH( 39, 52) = 0.864237E-01 +PKER_SWETH( 39, 53) = 0.778719E-01 +PKER_SWETH( 39, 54) = 0.699550E-01 +PKER_SWETH( 39, 55) = 0.626577E-01 +PKER_SWETH( 39, 56) = 0.559517E-01 +PKER_SWETH( 39, 57) = 0.497985E-01 +PKER_SWETH( 39, 58) = 0.441542E-01 +PKER_SWETH( 39, 59) = 0.389738E-01 +PKER_SWETH( 39, 60) = 0.342166E-01 +PKER_SWETH( 39, 61) = 0.298469E-01 +PKER_SWETH( 39, 62) = 0.258389E-01 +PKER_SWETH( 39, 63) = 0.221768E-01 +PKER_SWETH( 39, 64) = 0.188576E-01 +PKER_SWETH( 39, 65) = 0.158916E-01 +PKER_SWETH( 39, 66) = 0.132994E-01 +PKER_SWETH( 39, 67) = 0.111114E-01 +PKER_SWETH( 39, 68) = 0.936006E-02 +PKER_SWETH( 39, 69) = 0.806501E-02 +PKER_SWETH( 39, 70) = 0.723816E-02 +PKER_SWETH( 39, 71) = 0.686650E-02 +PKER_SWETH( 39, 72) = 0.691235E-02 +PKER_SWETH( 39, 73) = 0.732242E-02 +PKER_SWETH( 39, 74) = 0.802562E-02 +PKER_SWETH( 39, 75) = 0.894621E-02 +PKER_SWETH( 39, 76) = 0.100126E-01 +PKER_SWETH( 39, 77) = 0.111624E-01 +PKER_SWETH( 39, 78) = 0.123458E-01 +PKER_SWETH( 39, 79) = 0.135242E-01 +PKER_SWETH( 39, 80) = 0.146735E-01 +PKER_SWETH( 40, 1) = 0.313031E+01 +PKER_SWETH( 40, 2) = 0.293780E+01 +PKER_SWETH( 40, 3) = 0.275703E+01 +PKER_SWETH( 40, 4) = 0.258729E+01 +PKER_SWETH( 40, 5) = 0.242791E+01 +PKER_SWETH( 40, 6) = 0.227826E+01 +PKER_SWETH( 40, 7) = 0.213773E+01 +PKER_SWETH( 40, 8) = 0.200578E+01 +PKER_SWETH( 40, 9) = 0.188188E+01 +PKER_SWETH( 40, 10) = 0.176554E+01 +PKER_SWETH( 40, 11) = 0.165630E+01 +PKER_SWETH( 40, 12) = 0.155372E+01 +PKER_SWETH( 40, 13) = 0.145740E+01 +PKER_SWETH( 40, 14) = 0.136696E+01 +PKER_SWETH( 40, 15) = 0.128203E+01 +PKER_SWETH( 40, 16) = 0.120229E+01 +PKER_SWETH( 40, 17) = 0.112741E+01 +PKER_SWETH( 40, 18) = 0.105710E+01 +PKER_SWETH( 40, 19) = 0.991076E+00 +PKER_SWETH( 40, 20) = 0.929079E+00 +PKER_SWETH( 40, 21) = 0.870863E+00 +PKER_SWETH( 40, 22) = 0.816197E+00 +PKER_SWETH( 40, 23) = 0.764863E+00 +PKER_SWETH( 40, 24) = 0.716657E+00 +PKER_SWETH( 40, 25) = 0.671389E+00 +PKER_SWETH( 40, 26) = 0.628877E+00 +PKER_SWETH( 40, 27) = 0.588953E+00 +PKER_SWETH( 40, 28) = 0.551458E+00 +PKER_SWETH( 40, 29) = 0.516242E+00 +PKER_SWETH( 40, 30) = 0.483165E+00 +PKER_SWETH( 40, 31) = 0.452093E+00 +PKER_SWETH( 40, 32) = 0.422902E+00 +PKER_SWETH( 40, 33) = 0.395476E+00 +PKER_SWETH( 40, 34) = 0.369701E+00 +PKER_SWETH( 40, 35) = 0.345475E+00 +PKER_SWETH( 40, 36) = 0.322698E+00 +PKER_SWETH( 40, 37) = 0.301275E+00 +PKER_SWETH( 40, 38) = 0.281119E+00 +PKER_SWETH( 40, 39) = 0.262143E+00 +PKER_SWETH( 40, 40) = 0.244268E+00 +PKER_SWETH( 40, 41) = 0.227416E+00 +PKER_SWETH( 40, 42) = 0.211515E+00 +PKER_SWETH( 40, 43) = 0.196493E+00 +PKER_SWETH( 40, 44) = 0.182286E+00 +PKER_SWETH( 40, 45) = 0.168832E+00 +PKER_SWETH( 40, 46) = 0.156075E+00 +PKER_SWETH( 40, 47) = 0.143968E+00 +PKER_SWETH( 40, 48) = 0.132471E+00 +PKER_SWETH( 40, 49) = 0.121560E+00 +PKER_SWETH( 40, 50) = 0.111219E+00 +PKER_SWETH( 40, 51) = 0.101447E+00 +PKER_SWETH( 40, 52) = 0.922530E-01 +PKER_SWETH( 40, 53) = 0.836474E-01 +PKER_SWETH( 40, 54) = 0.756380E-01 +PKER_SWETH( 40, 55) = 0.682230E-01 +PKER_SWETH( 40, 56) = 0.613879E-01 +PKER_SWETH( 40, 57) = 0.551058E-01 +PKER_SWETH( 40, 58) = 0.493398E-01 +PKER_SWETH( 40, 59) = 0.440480E-01 +PKER_SWETH( 40, 60) = 0.391874E-01 +PKER_SWETH( 40, 61) = 0.347167E-01 +PKER_SWETH( 40, 62) = 0.305992E-01 +PKER_SWETH( 40, 63) = 0.268049E-01 +PKER_SWETH( 40, 64) = 0.233110E-01 +PKER_SWETH( 40, 65) = 0.201033E-01 +PKER_SWETH( 40, 66) = 0.171779E-01 +PKER_SWETH( 40, 67) = 0.145412E-01 +PKER_SWETH( 40, 68) = 0.122100E-01 +PKER_SWETH( 40, 69) = 0.102095E-01 +PKER_SWETH( 40, 70) = 0.856828E-02 +PKER_SWETH( 40, 71) = 0.730855E-02 +PKER_SWETH( 40, 72) = 0.644644E-02 +PKER_SWETH( 40, 73) = 0.598027E-02 +PKER_SWETH( 40, 74) = 0.588539E-02 +PKER_SWETH( 40, 75) = 0.612142E-02 +PKER_SWETH( 40, 76) = 0.663468E-02 +PKER_SWETH( 40, 77) = 0.735968E-02 +PKER_SWETH( 40, 78) = 0.823287E-02 +PKER_SWETH( 40, 79) = 0.919883E-02 +PKER_SWETH( 40, 80) = 0.102081E-01 +END IF +! +END SUBROUTINE LIMA_READ_XKER_SWETH diff --git a/src/MNH/lima_sedimentation.f90 b/src/MNH/lima_sedimentation.f90 new file mode 100644 index 0000000000000000000000000000000000000000..b90de134a2e20531b2dd64091ca2ebcdef10a036 --- /dev/null +++ b/src/MNH/lima_sedimentation.f90 @@ -0,0 +1,244 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################### + MODULE MODI_LIMA_SEDIMENTATION +! ################################### +! +INTERFACE + SUBROUTINE LIMA_SEDIMENTATION (HPHASE, KMOMENTS, KID, KSPLITG, PTSTEP, PZZ, PRHODREF, & + PPABST, PT, PRT_SUM, PCPT, PRS, PCS, PINPR ) +! +CHARACTER(1), INTENT(IN) :: HPHASE ! Liquid or solid hydrometeors +INTEGER, INTENT(IN) :: KMOMENTS ! Number of moments +INTEGER, INTENT(IN) :: KID ! Hydrometeor ID +INTEGER, INTENT(IN) :: KSPLITG ! +REAL, INTENT(IN) :: PTSTEP ! Time step +REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Height (z) +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PT ! Temperature +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRT_SUM ! total water mixing ratio +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCPT ! Cp +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRS ! m.r. source +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCS ! C. source +REAL, DIMENSION(:,:), INTENT(INOUT) :: PINPR ! Instant precip rate +! +END SUBROUTINE LIMA_SEDIMENTATION +END INTERFACE +END MODULE MODI_LIMA_SEDIMENTATION +! +! +! ###################################################################### + SUBROUTINE LIMA_SEDIMENTATION (HPHASE, KMOMENTS, KID, KSPLITG, PTSTEP, PZZ, PRHODREF, & + PPABST, PT, PRT_SUM, PCPT, PRS, PCS, PINPR ) +! ###################################################################### +! +!! PURPOSE +!! ------- +!! The purpose of this routine is to compute the sedimentation of any hydrometeor, +!! also accounting for the transport of heat +!! +!! METHOD +!! ------ +!! The sedimentation rates are computed with a time spliting technique: +!! an upstream scheme, written as a difference of non-advective fluxes. +!! This source term is added to the next coming time step (split-implicit +!! process). +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAM_LIMA_COLD, ONLY : XLBEXI, XLBI, XDI, & + XFSEDRI, XFSEDCI, XFSEDS, XEXSEDS +USE MODD_PARAM_LIMA_MIXED, ONLY : XFSEDG, XEXSEDG, XFSEDH, XEXSEDH +USE MODD_PARAM_LIMA, ONLY : XCEXVT, XRTMIN, XCTMIN, NSPLITSED, & + XLB, XLBEX, XD, XFSEDR, XFSEDC, & + XALPHAC, XNUC +USE MODD_CST, ONLY : XRHOLW, XCL, XCI +USE MODD_PARAMETERS, ONLY : JPHEXT, JPVEXT +USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV +USE MODI_GAMMA, ONLY : GAMMA_X0D +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +CHARACTER(1), INTENT(IN) :: HPHASE ! Liquid or solid hydrometeors +INTEGER, INTENT(IN) :: KMOMENTS ! Number of moments +INTEGER, INTENT(IN) :: KID ! Hydrometeor ID +INTEGER, INTENT(IN) :: KSPLITG ! +REAL, INTENT(IN) :: PTSTEP ! Time step +REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Height (z) +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PT ! Temperature +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRT_SUM ! total water mixing ratio +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCPT ! Cp +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRS ! m.r. source +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCS ! C. source +REAL, DIMENSION(:,:), INTENT(INOUT) :: PINPR ! Instant precip rate +! +!* 0.2 Declarations of local variables : +! +INTEGER :: JK, JL, JN ! Loop index +INTEGER :: IIB, IIE, IJB, IJE, IKB, IKE ! Physical domain +INTEGER :: ISEDIM ! Case number of sedimentation +! +LOGICAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & + :: GSEDIM ! Test where to compute the SED processes +REAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & + :: ZW, & ! Work array + ZWSEDR, & ! Sedimentation of MMR + ZWSEDC, & ! Sedimentation of number conc. + ZWDT ! Temperature change +! +REAL, DIMENSION(:), ALLOCATABLE & + :: ZRS, & ! m.r. source + ZCS, & ! conc. source + ZRHODREF, & ! RHO Dry REFerence + ZPABST, & ! Pressure + ZT, & ! Temperature + ZZW, & ! Work array + ZZX, & ! Work array + ZZY, & ! Work array + ZLBDA, & ! Slope parameter + ZCC ! Cunningham corrective term for droplets fall speed +! +INTEGER , DIMENSION(SIZE(PRHODREF)) :: I1,I2,I3 ! Indexes for PACK replacement +! +REAL :: ZTSPLITG ! Small time step for rain sedimentation +REAL :: ZC ! Cpl or Cpi +! +! +!------------------------------------------------------------------------------- +! +! Physical domain +! +IIB=1+JPHEXT +IIE=SIZE(PZZ,1) - JPHEXT +IJB=1+JPHEXT +IJE=SIZE(PZZ,2) - JPHEXT +IKB=1+JPVEXT +IKE=SIZE(PZZ,3) - JPVEXT +! +! Time splitting +! +ZTSPLITG= PTSTEP / FLOAT(NSPLITSED(KID)) +! +ZWDT=0. +PINPR(:,:) = 0. +! +PRS(:,:,:) = PRS(:,:,:) * PTSTEP +IF (KMOMENTS==2) PCS(:,:,:) = PCS(:,:,:) * PTSTEP +DO JK = IKB , IKE + ZW(:,:,JK)=ZTSPLITG/(PZZ(:,:,JK+1)-PZZ(:,:,JK)) +END DO +ZW(:,:,IKE+1) = ZW(:,:,IKE) +! +IF (HPHASE=='L') ZC=XCL +IF (HPHASE=='I') ZC=XCI +! +! ################################ +! Compute the sedimentation fluxes +! ################################ +! +DO JN = 1 , NSPLITSED(KID) + ! Computation only where enough ice, snow, graupel or hail + GSEDIM(:,:,:) = .FALSE. + GSEDIM(IIB:IIE,IJB:IJE,IKB:IKE) = PRS(IIB:IIE,IJB:IJE,IKB:IKE)>XRTMIN(KID) + IF (KMOMENTS==2) GSEDIM(:,:,:) = GSEDIM(:,:,:) .AND. PCS(:,:,:)>XCTMIN(KID) + ISEDIM = COUNTJV( GSEDIM(:,:,:),I1(:),I2(:),I3(:)) +! + IF( ISEDIM >= 1 ) THEN +! + ALLOCATE(ZRHODREF(ISEDIM)) + ALLOCATE(ZPABST(ISEDIM)) + ALLOCATE(ZT(ISEDIM)) + ALLOCATE(ZRS(ISEDIM)) + ALLOCATE(ZCS(ISEDIM)) + ALLOCATE(ZLBDA(ISEDIM)) ; ZLBDA(:) = 1.E10 + ALLOCATE(ZCC(ISEDIM)) ; ZCC(:) = 1.0 + ALLOCATE(ZZW(ISEDIM)) ; ZZW(:) = 0.0 + ALLOCATE(ZZX(ISEDIM)) ; ZZX(:) = 0.0 + ALLOCATE(ZZY(ISEDIM)) ; ZZY(:) = 0.0 +! + DO JL = 1,ISEDIM + ZRHODREF(JL) = PRHODREF(I1(JL),I2(JL),I3(JL)) + ZPABST(JL) = PPABST(I1(JL),I2(JL),I3(JL)) + ZT(JL) = PT(I1(JL),I2(JL),I3(JL)) + ZRS(JL) = PRS(I1(JL),I2(JL),I3(JL)) + IF (KMOMENTS==2) ZCS(JL) = PCS(I1(JL),I2(JL),I3(JL)) + END DO +! + IF (KMOMENTS==1) ZLBDA(:) = XLB(KID) * ( ZRHODREF(:) * ZRS(:) )**XLBEX(KID) + IF (KMOMENTS==2) ZLBDA(:) = ( XLB(KID)*ZCS(:) / ZRS(:) )**XLBEX(KID) +! + ZZY(:) = ZRHODREF(:)**(-XCEXVT) * ZLBDA(:)**(-XD(KID)) + ZZW(:) = XFSEDR(KID) * ZRS(:) * ZZY(:) * ZRHODREF(:) + IF (KMOMENTS==2) ZZX(:) = XFSEDC(KID) * ZCS(:) * ZZY(:) * ZRHODREF(:) + + IF (KID==2) THEN + ZCC(:) = 0.5*GAMMA_X0D(XNUC+1./XALPHAC)/(GAMMA_X0D(XNUC)*ZLBDA(:)) + ZCC(:) = 1.+1.26*6.6E-8*(101325./ZPABST(:))*(ZT(:)/293.15)/ZCC(:) + ZZW(:) = ZCC(:) * ZZW(:) + ZZX(:) = ZCC(:) * ZZX(:) + END IF + + ZWSEDR(:,:,:) = UNPACK( ZZW(:),MASK=GSEDIM(:,:,:),FIELD=0.0 ) + ZWSEDR(:,:,IKB:IKE) = MIN( ZWSEDR(:,:,IKB:IKE), PRS(:,:,IKB:IKE) * PRHODREF(:,:,IKB:IKE) / ZW(:,:,IKB:IKE) ) + IF (KMOMENTS==2) ZWSEDC(:,:,:) = UNPACK( ZZX(:),MASK=GSEDIM(:,:,:),FIELD=0.0 ) + IF (KMOMENTS==2) ZWSEDC(:,:,IKB:IKE) = MIN( ZWSEDC(:,:,IKB:IKE), PCS(:,:,IKB:IKE) * PRHODREF(:,:,IKB:IKE) / ZW(:,:,IKB:IKE) ) + + DO JK = IKB , IKE + PRS(:,:,JK) = PRS(:,:,JK) + ZW(:,:,JK)* & + (ZWSEDR(:,:,JK+1)-ZWSEDR(:,:,JK))/PRHODREF(:,:,JK) + IF (KMOMENTS==2) PCS(:,:,JK) = PCS(:,:,JK) + ZW(:,:,JK)* & + (ZWSEDC(:,:,JK+1)-ZWSEDC(:,:,JK))/PRHODREF(:,:,JK) + ! Heat transport + PRT_SUM(:,:,JK-1) = PRT_SUM(:,:,JK-1) + ZW(:,:,JK-1)*ZWSEDR(:,:,JK)/PRHODREF(:,:,JK-1) + PRT_SUM(:,:,JK) = PRT_SUM(:,:,JK) - ZW(:,:,JK)*ZWSEDR(:,:,JK)/PRHODREF(:,:,JK) + PCPT(:,:,JK-1) = PCPT(:,:,JK-1) + ZC * (ZW(:,:,JK-1)*ZWSEDR(:,:,JK)/PRHODREF(:,:,JK-1)) + PCPT(:,:,JK) = PCPT(:,:,JK) - ZC * (ZW(:,:,JK)*ZWSEDR(:,:,JK)/PRHODREF(:,:,JK)) + ZWDT(:,:,JK) =(PRHODREF(:,:,JK+1)*(1.+PRT_SUM(:,:,JK))*PCPT(:,:,JK)*PT(:,:,JK) + & + ZW(:,:,JK)*ZWSEDR(:,:,JK+1)*ZC*PT(:,:,JK+1)) / & + (PRHODREF(:,:,JK+1)*(1.+PRT_SUM(:,:,JK))*PCPT(:,:,JK) + ZW(:,:,JK)*ZWSEDR(:,:,JK+1)*ZC) + ZWDT(:,:,JK) = ZWDT(:,:,JK) - PT(:,:,JK) + END DO + DEALLOCATE(ZRHODREF) + DEALLOCATE(ZPABST) + DEALLOCATE(ZT) + DEALLOCATE(ZRS) + DEALLOCATE(ZCS) + DEALLOCATE(ZCC) + DEALLOCATE(ZLBDA) + DEALLOCATE(ZZW) + DEALLOCATE(ZZX) + DEALLOCATE(ZZY) + ! + PINPR(:,:) = PINPR(:,:) + ZWSEDR(:,:,IKB)/XRHOLW/NSPLITSED(KID) ! in m/s + PT(:,:,:) = PT(:,:,:) + ZWDT(:,:,:) + + END IF +END DO +! +PRS(:,:,:) = PRS(:,:,:) / PTSTEP +IF (KMOMENTS==2) PCS(:,:,:) = PCS(:,:,:) / PTSTEP +! +END SUBROUTINE LIMA_SEDIMENTATION +! +!------------------------------------------------------------------------------- diff --git a/src/MNH/lima_tendencies.f90 b/src/MNH/lima_tendencies.f90 new file mode 100644 index 0000000000000000000000000000000000000000..d9b5491ff89e69aaf6c7cdcefb8a519c993f9154 --- /dev/null +++ b/src/MNH/lima_tendencies.f90 @@ -0,0 +1,647 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +!############################### +MODULE MODI_LIMA_TENDENCIES +!############################### + INTERFACE + SUBROUTINE LIMA_TENDENCIES (PTSTEP, LDCOMPUTE, & + PEXNREF, PRHODREF, PPABST, PTHT, & + PRVT, PRCT, PRRT, PRIT, PRST, PRGT, PRHT, & + PCCT, PCRT, PCIT, & + P_TH_HONC, P_RC_HONC, P_CC_HONC, & + P_CC_SELF, & + P_RC_AUTO, P_CC_AUTO, P_CR_AUTO, & + P_RC_ACCR, P_CC_ACCR, & + P_CR_SCBU, & + P_TH_EVAP, P_RR_EVAP, & + P_RI_CNVI, P_CI_CNVI, & + P_TH_DEPS, P_RS_DEPS, & + P_RI_CNVS, P_CI_CNVS, & + P_RI_AGGS, P_CI_AGGS, & + P_TH_DEPG, P_RG_DEPG, & + P_TH_BERFI, P_RC_BERFI, & + P_TH_RIM, P_RC_RIM, P_CC_RIM, P_RS_RIM, P_RG_RIM, & + P_RI_HMS, P_CI_HMS, P_RS_HMS, & + P_TH_ACC, P_RR_ACC, P_CR_ACC, P_RS_ACC, P_RG_ACC, & + P_RS_CMEL, & + P_TH_CFRZ, P_RR_CFRZ, P_CR_CFRZ, P_RI_CFRZ, P_CI_CFRZ, & + P_TH_WETG, P_RC_WETG, P_CC_WETG, P_RR_WETG, P_CR_WETG, & + P_RI_WETG, P_CI_WETG, P_RS_WETG, P_RG_WETG, P_RH_WETG, & + P_TH_DRYG, P_RC_DRYG, P_CC_DRYG, P_RR_DRYG, P_CR_DRYG, & + P_RI_DRYG, P_CI_DRYG, P_RS_DRYG, P_RG_DRYG, & + P_RI_HMG, P_CI_HMG, P_RG_HMG, & + P_TH_GMLT, P_RR_GMLT, P_CR_GMLT, & +!!! Z_RC_WETH, Z_CC_WETH, Z_RR_WETH, Z_CR_WETH, & ! wet growth of hail (WETH) : rc, Nc, rr, Nr, ri, Ni, rs, rg, rh, th +!!! Z_RI_WETH, Z_CI_WETH, Z_RS_WETH, Z_RG_WETH, Z_RH_WETH, & ! wet growth of hail (WETH) : rc, Nc, rr, Nr, ri, Ni, rs, rg, rh, th +!!! Z_RG_COHG, & ! conversion of hail into graupel (COHG) : rg, rh +!!! Z_RR_HMLT, Z_CR_HMLT ! hail melting (HMLT) : rr, Nr, rh=-rr, th + PA_TH, PA_RV, PA_RC, PA_CC, PA_RR, PA_CR, & + PA_RI, PA_CI, PA_RS, PA_RG, PA_RH, & + PEVAP3D ) +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PEXNREF ! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! +REAL, DIMENSION(:), INTENT(IN) :: PPABST ! Pressure +REAL, DIMENSION(:), INTENT(IN) :: PTHT ! Potential temperature +! +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! +REAL, DIMENSION(:), INTENT(IN) :: PRST ! +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! +REAL, DIMENSION(:), INTENT(IN) :: PRHT ! Mixing ratios (kg/kg) +! +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! Number concentrations (/kg) +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_HONC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_HONC +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_HONC ! droplets homogeneous freezing (HONC) : rc, Nc, ri=-rc, Ni=-Nc, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_SELF ! self collection of droplets (SELF) : Nc +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_AUTO +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_AUTO +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_AUTO ! autoconversion of cloud droplets (AUTO) : rc, Nc, rr=-rc, Nr +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_ACCR +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_ACCR ! accretion of droplets by rain drops (ACCR) : rc, Nc, rr=-rr +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_SCBU ! self collectio break up of drops (SCBU) : Nr +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_EVAP +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_EVAP ! evaporation of rain drops (EVAP) : rr, rv=-rr +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CNVI +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CNVI ! conversion snow -> ice (CNVI) : ri, Ni, rs=-ri +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DEPS +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_DEPS ! deposition of vapor on snow (DEPS) : rv=-rs, rs, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CNVS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CNVS ! conversion ice -> snow (CNVS) : ri, Ni, rs=-ri +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_AGGS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_AGGS ! aggregation of ice on snow (AGGS) : ri, Ni, rs=-ri +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DEPG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_DEPG ! deposition of vapor on graupel (DEPG) : rv=-rg, rg, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_BERFI +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_BERFI ! Bergeron (BERFI) : rc, ri=-rc, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_RIM ! cloud droplet riming (RIM) : rc, Nc, rs, rg, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_HMS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_HMS +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_HMS ! hallett mossop snow (HMS) : ri, Ni, rs +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_ACC ! rain accretion on aggregates (ACC) : rr, Nr, rs, rg, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_CMEL ! conversion-melting (CMEL) : rs, rg=-rs +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CFRZ ! rain freezing (CFRZ) : rr, Nr, ri, Ni, rg=-rr-ri, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RH_WETG ! wet growth of graupel (WETG) : rc, NC, rr, Nr, ri, Ni, rs, rg, rh, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_DRYG ! dry growth of graupel (DRYG) : rc, Nc, rr, Nr, ri, Ni, rs, rg, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_HMG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_HMG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_HMG ! hallett mossop graupel (HMG) : ri, Ni, rg +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_GMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_GMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_GMLT ! graupel melting (GMLT) : rr, Nr, rg=-rr, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RV +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RH +! +REAL, DIMENSION(:), INTENT(INOUT) :: PEVAP3D +! + END SUBROUTINE LIMA_TENDENCIES + END INTERFACE +END MODULE MODI_LIMA_TENDENCIES +!##################################################################### +! +!##################################################################### +SUBROUTINE LIMA_TENDENCIES (PTSTEP, LDCOMPUTE, & + PEXNREF, PRHODREF, PPABST, PTHT, & + PRVT, PRCT, PRRT, PRIT, PRST, PRGT, PRHT, & + PCCT, PCRT, PCIT, & + P_TH_HONC, P_RC_HONC, P_CC_HONC, & + P_CC_SELF, & + P_RC_AUTO, P_CC_AUTO, P_CR_AUTO, & + P_RC_ACCR, P_CC_ACCR, & + P_CR_SCBU, & + P_TH_EVAP, P_RR_EVAP, & + P_RI_CNVI, P_CI_CNVI, & + P_TH_DEPS, P_RS_DEPS, & + P_RI_CNVS, P_CI_CNVS, & + P_RI_AGGS, P_CI_AGGS, & + P_TH_DEPG, P_RG_DEPG, & + P_TH_BERFI, P_RC_BERFI, & + P_TH_RIM, P_RC_RIM, P_CC_RIM, P_RS_RIM, P_RG_RIM, & + P_RI_HMS, P_CI_HMS, P_RS_HMS, & + P_TH_ACC, P_RR_ACC, P_CR_ACC, P_RS_ACC, P_RG_ACC, & + P_RS_CMEL, & + P_TH_CFRZ, P_RR_CFRZ, P_CR_CFRZ, P_RI_CFRZ, P_CI_CFRZ, & + P_TH_WETG, P_RC_WETG, P_CC_WETG, P_RR_WETG, P_CR_WETG, & + P_RI_WETG, P_CI_WETG, P_RS_WETG, P_RG_WETG, P_RH_WETG, & + P_TH_DRYG, P_RC_DRYG, P_CC_DRYG, P_RR_DRYG, P_CR_DRYG, & + P_RI_DRYG, P_CI_DRYG, P_RS_DRYG, P_RG_DRYG, & + P_RI_HMG, P_CI_HMG, P_RG_HMG, & + P_TH_GMLT, P_RR_GMLT, P_CR_GMLT, & +!!! Z_RC_WETH, Z_CC_WETH, Z_RR_WETH, Z_CR_WETH, & ! wet growth of hail (WETH) : rc, Nc, rr, Nr, ri, Ni, rs, rg, rh, th +!!! Z_RI_WETH, Z_CI_WETH, Z_RS_WETH, Z_RG_WETH, Z_RH_WETH, & ! wet growth of hail (WETH) : rc, Nc, rr, Nr, ri, Ni, rs, rg, rh, th +!!! Z_RG_COHG, & ! conversion of hail into graupel (COHG) : rg, rh +!!! Z_RR_HMLT, Z_CR_HMLT ! hail melting (HMLT) : rr, Nr, rh=-rr, th + PA_TH, PA_RV, PA_RC, PA_CC, PA_RR, PA_CR, & + PA_RI, PA_CI, PA_RS, PA_RG, PA_RH, & + PEVAP3D ) +! ###################################################################### +!! +!! PURPOSE +!! ------- +!! Compute sources of non-instantaneous microphysical processes for the +!! time-splitted version of LIMA +!! +!! AUTHOR +!! ------ +!! B. Vié * CNRM * +!! +!! MODIFICATIONS +!! ------------- +!! Original 15/03/2018 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : XP00, XRD, XRV, XMD, XMV, XCPD, XCPV, XCL, XCI, XLVTT, XLSTT, XTT, & + XALPW, XBETAW, XGAMW, XALPI, XBETAI, XGAMI +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN, & + LCOLD, LNUCL, LSNOW, LHAIL, LWARM, LACTI, LRAIN +USE MODD_PARAM_LIMA_WARM, ONLY : XLBC, XLBEXC, XLBR, XLBEXR +USE MODD_PARAM_LIMA_MIXED, ONLY : XLBG, XLBEXG, XLBH, XLBEXH, XLBDAG_MAX +USE MODD_PARAM_LIMA_COLD, ONLY : XSCFAC, XLBI, XLBEXI, XLBS, XLBEXS, XLBDAS_MAX +! +USE MODI_LIMA_DROPLETS_HOM_FREEZING +USE MODI_LIMA_DROPLETS_SELF_COLLECTION +USE MODI_LIMA_DROPLETS_AUTOCONVERSION +USE MODI_LIMA_DROPLETS_ACCRETION +USE MODI_LIMA_DROPS_SELF_COLLECTION +USE MODI_LIMA_RAIN_EVAPORATION +USE MODI_LIMA_ICE_SNOW_DEPOSITION +USE MODI_LIMA_ICE_AGGREGATION_SNOW +USE MODI_LIMA_GRAUPEL_DEPOSITION +USE MODI_LIMA_BERGERON +USE MODI_LIMA_DROPLETS_RIMING_SNOW +USE MODI_LIMA_RAIN_ACCR_SNOW +USE MODI_LIMA_CONVERSION_MELTING_SNOW +USE MODI_LIMA_RAIN_FREEZING +USE MODI_LIMA_GRAUPEL +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +REAL, INTENT(IN) :: PTSTEP +LOGICAL, DIMENSION(:),INTENT(IN) :: LDCOMPUTE +! +REAL, DIMENSION(:), INTENT(IN) :: PEXNREF ! +REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! +REAL, DIMENSION(:), INTENT(IN) :: PPABST ! Pressure +REAL, DIMENSION(:), INTENT(IN) :: PTHT ! Potential temperature +! +REAL, DIMENSION(:), INTENT(IN) :: PRVT ! +REAL, DIMENSION(:), INTENT(IN) :: PRCT ! +REAL, DIMENSION(:), INTENT(IN) :: PRRT ! +REAL, DIMENSION(:), INTENT(IN) :: PRIT ! +REAL, DIMENSION(:), INTENT(IN) :: PRST ! +REAL, DIMENSION(:), INTENT(IN) :: PRGT ! +REAL, DIMENSION(:), INTENT(IN) :: PRHT ! Mixing ratios (kg/kg) +! +REAL, DIMENSION(:), INTENT(IN) :: PCCT ! +REAL, DIMENSION(:), INTENT(IN) :: PCRT ! +REAL, DIMENSION(:), INTENT(IN) :: PCIT ! Number concentrations (/kg) +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_HONC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_HONC +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_HONC ! droplets homogeneous freezing (HONC) : rc, Nc, ri=-rc, Ni=-Nc, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_SELF ! self collection of droplets (SELF) : Nc +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_AUTO +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_AUTO +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_AUTO ! autoconversion of cloud droplets (AUTO) : rc, Nc, rr=-rc, Nr +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_ACCR +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_ACCR ! accretion of droplets by rain drops (ACCR) : rc, Nc, rr=-rr +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_SCBU ! self collectio break up of drops (SCBU) : Nr +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_EVAP +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_EVAP ! evaporation of rain drops (EVAP) : rr, rv=-rr +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CNVI +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CNVI ! conversion snow -> ice (CNVI) : ri, Ni, rs=-ri +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DEPS +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_DEPS ! deposition of vapor on snow (DEPS) : rv=-rs, rs, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CNVS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CNVS ! conversion ice -> snow (CNVS) : ri, Ni, rs=-ri +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_AGGS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_AGGS ! aggregation of ice on snow (AGGS) : ri, Ni, rs=-ri +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DEPG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_DEPG ! deposition of vapor on graupel (DEPG) : rv=-rg, rg, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_BERFI +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_BERFI ! Bergeron (BERFI) : rc, ri=-rc, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_RIM +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_RIM ! cloud droplet riming (RIM) : rc, Nc, rs, rg, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_HMS +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_HMS +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_HMS ! hallett mossop snow (HMS) : ri, Ni, rs +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_ACC +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_ACC ! rain accretion on aggregates (ACC) : rr, Nr, rs, rg, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_CMEL ! conversion-melting (CMEL) : rs, rg=-rs +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_CFRZ +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_CFRZ ! rain freezing (CFRZ) : rr, Nr, ri, Ni, rg=-rr-ri, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_WETG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RH_WETG ! wet growth of graupel (WETG) : rc, NC, rr, Nr, ri, Ni, rs, rg, rh, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RC_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CC_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RS_DRYG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_DRYG ! dry growth of graupel (DRYG) : rc, Nc, rr, Nr, ri, Ni, rs, rg, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_RI_HMG +REAL, DIMENSION(:), INTENT(INOUT) :: P_CI_HMG +REAL, DIMENSION(:), INTENT(INOUT) :: P_RG_HMG ! hallett mossop graupel (HMG) : ri, Ni, rg +! +REAL, DIMENSION(:), INTENT(INOUT) :: P_TH_GMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_RR_GMLT +REAL, DIMENSION(:), INTENT(INOUT) :: P_CR_GMLT ! graupel melting (GMLT) : rr, Nr, rg=-rr, th +! +REAL, DIMENSION(:), INTENT(INOUT) :: PA_TH +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RV +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CC +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CR +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_CI +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RS +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RG +REAL, DIMENSION(:), INTENT(INOUT) :: PA_RH +! +REAL, DIMENSION(:), INTENT(INOUT) :: PEVAP3D +! +!* 0.2 Declarations of local variables : +! +REAL, DIMENSION(SIZE(PRCT)) :: ZT + +REAL, DIMENSION(SIZE(PRCT)) :: ZLBDC +REAL, DIMENSION(SIZE(PRCT)) :: ZLBDC3 +REAL, DIMENSION(SIZE(PRCT)) :: ZLBDR +REAL, DIMENSION(SIZE(PRCT)) :: ZLBDR3 +REAL, DIMENSION(SIZE(PRCT)) :: ZLBDI +REAL, DIMENSION(SIZE(PRCT)) :: ZLBDS +REAL, DIMENSION(SIZE(PRCT)) :: ZLBDG +REAL, DIMENSION(SIZE(PRCT)) :: ZLBDH + +REAL, DIMENSION(SIZE(PRCT)) :: ZAI +REAL, DIMENSION(SIZE(PRCT)) :: ZKA +REAL, DIMENSION(SIZE(PRCT)) :: ZDV +REAL, DIMENSION(SIZE(PRCT)) :: ZCJ + +REAL, DIMENSION(SIZE(PRCT)) :: ZEPS +REAL, DIMENSION(SIZE(PRCT)) :: ZEVSAT +REAL, DIMENSION(SIZE(PRCT)) :: ZEISAT +REAL, DIMENSION(SIZE(PRCT)) :: ZRVSAT +REAL, DIMENSION(SIZE(PRCT)) :: ZRISAT +! +REAL, DIMENSION(SIZE(PRCT)) :: ZSSI +REAL, DIMENSION(SIZE(PRCT)) :: ZSSIW + +REAL, DIMENSION(SIZE(PRCT)) :: ZLV +REAL, DIMENSION(SIZE(PRCT)) :: ZLS +REAL, DIMENSION(SIZE(PRCT)) :: ZLVFACT +REAL, DIMENSION(SIZE(PRCT)) :: ZLSFACT +! +REAL, DIMENSION(SIZE(PRCT)) :: ZW +! +!------------------------------------------------------------------------------- +! Pre-compute quantities +! +WHERE (LDCOMPUTE(:)) + ZT(:) = PTHT(:) * ( PPABST(:)/XP00 ) ** (XRD/XCPD) +! + ZW(:) = PEXNREF(:)*( XCPD & + +XCPV*PRVT(:) & + +XCL*(PRCT(:)+PRRT(:)) & + +XCI*(PRIT(:)+PRST(:)+PRGT(:)+PRHT(:)) ) +! + ZLV(:) = XLVTT + (XCPV-XCL)*(ZT(:)-XTT) + ZLVFACT(:) = ZLV(:)/ZW(:) ! L_v/(Pi_ref*C_ph) + ZLS(:) = XLSTT + (XCPV-XCI)*(ZT(:)-XTT) + ZLSFACT(:) = ZLS(:)/ZW(:) ! L_s/(Pi_ref*C_ph) +! + ZEVSAT(:) = EXP( XALPW - XBETAW/ZT(:) - XGAMW*ALOG(ZT(:) ) ) + ZEISAT(:) = EXP( XALPI - XBETAI/ZT(:) - XGAMI*ALOG(ZT(:) ) ) + ! + ZEPS= XMV / XMD + ZRVSAT(:) = ZEPS * ZEVSAT(:) / (PPABST(:) - ZEVSAT(:)) + ZRISAT(:) = ZEPS * ZEISAT(:) / (PPABST(:) - ZEISAT(:)) + ! + ZSSI(:) = PRVT(:)/ZRISAT(:) - 1.0 ! Si = rv/rsi - 1 + ZSSIW(:) = ZRVSAT(:)/ZRISAT(:) - 1.0 ! Siw = rsw/rsi - 1 +! + ZKA(:) = 2.38E-2 + 0.0071E-2 * ( ZT(:) - XTT ) +! + ZDV(:) = 0.211E-4 * (ZT(:)/XTT)**1.94 * (XP00/PPABST(:)) +! + ZAI(:) = ( XLSTT + (XCPV-XCI)*(ZT(:)-XTT) )**2 / (ZKA(:)*XRV*ZT(:)**2) & + + ( XRV*ZT(:) ) / (ZDV(:)*ZEISAT(:)) +! + ZCJ(:) = XSCFAC * PRHODREF(:)**0.3 / SQRT( 1.718E-5+0.0049E-5*(ZT(:)-XTT) ) +! +END WHERE +! +! +ZLBDC(:) = 1.E10 +ZLBDC3(:) = 1.E30 +WHERE (PRCT(:)>XRTMIN(2) .AND. PCCT(:)>XCTMIN(2) .AND. LDCOMPUTE(:)) + ZLBDC3(:) = XLBC*PCCT(:) / PRCT(:) + ZLBDC(:) = ZLBDC3(:)**XLBEXC +END WHERE +ZLBDR(:) = 1.E10 +ZLBDR3(:) = 1.E30 +WHERE (PRRT(:)>XRTMIN(3) .AND. PCRT(:)>XCTMIN(3) .AND. LDCOMPUTE(:)) + ZLBDR3(:) = XLBR*PCRT(:) / PRRT(:) + ZLBDR(:) = ZLBDR3(:)**XLBEXR +END WHERE +ZLBDI(:) = 1.E10 +WHERE (PRIT(:)>XRTMIN(4) .AND. PCIT(:)>XCTMIN(4) .AND. LDCOMPUTE(:)) + ZLBDI(:) = ( XLBI*PCIT(:) / PRIT(:) )**XLBEXI +END WHERE +ZLBDS(:) = 1.E10 +WHERE (PRST(:)>XRTMIN(5) .AND. LDCOMPUTE(:) ) + ZLBDS(:) = XLBS*( PRHODREF(:)*PRST(:) )**XLBEXS +END WHERE +ZLBDG(:) = 1.E10 +WHERE (PRGT(:)>XRTMIN(6) .AND. LDCOMPUTE(:) ) + ZLBDG(:) = XLBG*( PRHODREF(:)*PRGT(:) )**XLBEXG +END WHERE +ZLBDH(:) = 1.E10 +WHERE (PRHT(:)>XRTMIN(7) .AND. LDCOMPUTE(:) ) + ZLBDH(:) = XLBH*( PRHODREF(:)*PRHT(:) )**XLBEXH +END WHERE +! +!------------------------------------------------------------------------------- +! Call microphysical processes +! +IF (LCOLD .AND. LWARM) THEN + CALL LIMA_DROPLETS_HOM_FREEZING (PTSTEP, LDCOMPUTE, & + ZT, ZLVFACT, ZLSFACT, & + PRCT, PCCT, ZLBDC, & + P_TH_HONC, P_RC_HONC, P_CC_HONC, & + PA_TH, PA_RC, PA_CC, PA_RI, PA_CI ) +END IF +! +IF (LWARM) THEN + CALL LIMA_DROPLETS_SELF_COLLECTION (LDCOMPUTE, & + PRHODREF, & + PCCT, ZLBDC3, & + P_CC_SELF, & + PA_CC ) +END IF +! +IF (LWARM .AND. LRAIN) THEN + CALL LIMA_DROPLETS_AUTOCONVERSION (LDCOMPUTE, & + PRHODREF, & + PRCT, ZLBDC, ZLBDR, & + P_RC_AUTO, P_CC_AUTO, P_CR_AUTO, & + PA_RC, PA_CC, PA_RR, PA_CR ) +END IF +! +IF (LWARM .AND. LRAIN) THEN + CALL LIMA_DROPLETS_ACCRETION (LDCOMPUTE, & + PRHODREF, & + PRCT, PRRT, PCCT, PCRT, & + ZLBDC, ZLBDC3, ZLBDR, ZLBDR3, & + P_RC_ACCR, P_CC_ACCR, & + PA_RC, PA_CC, PA_RR ) +END IF +! +IF (LWARM .AND. LRAIN) THEN + CALL LIMA_DROPS_SELF_COLLECTION (LDCOMPUTE, & + PRHODREF, & + PCRT, ZLBDR, ZLBDR3, & + P_CR_SCBU, & + PA_CR ) +END IF +! +IF (LWARM .AND. LRAIN) THEN + CALL LIMA_RAIN_EVAPORATION (PTSTEP, LDCOMPUTE, & + PRHODREF, ZT, ZLV, ZLVFACT, ZEVSAT, ZRVSAT, & + PRVT, PRCT, PRRT, ZLBDR, & + P_TH_EVAP, P_RR_EVAP, & + PA_RV, PA_RR, PA_TH, & + PEVAP3D ) +END IF +! +IF (LCOLD .AND. LSNOW) THEN + ! + ! Includes vapour deposition on snow, ice -> snow and snow -> ice exchanges + ! + CALL LIMA_ICE_SNOW_DEPOSITION (PTSTEP, LDCOMPUTE, & + PRHODREF, ZSSI, ZAI, ZCJ, ZLSFACT, & + PRIT, PRST, PCIT, ZLBDI, ZLBDS, & + P_RI_CNVI, P_CI_CNVI, & + P_TH_DEPS, P_RS_DEPS, & + P_RI_CNVS, P_CI_CNVS, & + PA_TH, PA_RV, PA_RI, PA_CI, PA_RS ) +END IF +! +! Lambda_s limited for collection processes to prevent too high concentrations +! must be changed or removed if C and x modified +! +ZLBDS(:) = MIN( XLBDAS_MAX, ZLBDS(:)) +! +! +IF (LCOLD .AND. LSNOW) THEN + CALL LIMA_ICE_AGGREGATION_SNOW (LDCOMPUTE, & + ZT, & + PRIT, PRST, PCIT, ZLBDI, ZLBDS, & + P_RI_AGGS, P_CI_AGGS, & + PA_RI, PA_CI, PA_RS ) +END IF +! +IF (LWARM .AND. LCOLD) THEN + CALL LIMA_GRAUPEL_DEPOSITION (LDCOMPUTE, & + PRGT, ZSSI, ZLBDG, ZAI, ZCJ, ZLSFACT, & + P_TH_DEPG, P_RG_DEPG, & + PA_TH, PA_RV, PA_RG ) +END IF +! +IF (LWARM .AND. LCOLD) THEN + CALL LIMA_BERGERON (LDCOMPUTE, & + PRCT, PRIT, PCIT, ZLBDI, & + ZSSIW, ZAI, ZCJ, ZLVFACT, ZLSFACT, & + P_TH_BERFI, P_RC_BERFI, & + PA_TH, PA_RC, PA_RI ) +END IF +! +IF (LWARM .AND. LCOLD .AND. LSNOW) THEN + ! + ! Graupel production as tendency (or should be tendency + instant to stick to the previous version ?) + ! Includes the Hallett Mossop process for riming of droplets by snow (HMS) + ! + CALL LIMA_DROPLETS_RIMING_SNOW (PTSTEP, LDCOMPUTE, & + PRHODREF, ZT, & + PRCT, PCCT, PRST, ZLBDC, ZLBDS, ZLVFACT, ZLSFACT, & + P_TH_RIM, P_RC_RIM, P_CC_RIM, P_RS_RIM, P_RG_RIM, & + P_RI_HMS, P_CI_HMS, P_RS_HMS, & + PA_TH, PA_RC, PA_CC, PA_RI, PA_CI, PA_RS, PA_RG ) +END IF +! +IF (LWARM .AND. LRAIN .AND. LCOLD .AND. LSNOW) THEN + CALL LIMA_RAIN_ACCR_SNOW (PTSTEP, LDCOMPUTE, & + PRHODREF, ZT, & + PRRT, PCRT, PRST, ZLBDR, ZLBDS, ZLVFACT, ZLSFACT, & + P_TH_ACC, P_RR_ACC, P_CR_ACC, P_RS_ACC, P_RG_ACC, & + PA_TH, PA_RR, PA_CR, PA_RS, PA_RG ) +END IF +! +IF (LWARM .AND. LCOLD .AND. LSNOW) THEN + ! + ! Conversion melting of snow should account for collected droplets and drops where T>0C, but does not ! + ! Some thermodynamical computations inside, to externalize ? + ! + CALL LIMA_CONVERSION_MELTING_SNOW (LDCOMPUTE, & + PRHODREF, PPABST, ZT, ZKA, ZDV, ZCJ, & + PRVT, PRST, ZLBDS, & + P_RS_CMEL, & + PA_RS, PA_RG ) +END IF +! +IF (LWARM .AND. LRAIN .AND. LCOLD ) THEN + CALL LIMA_RAIN_FREEZING (LDCOMPUTE, & + PRHODREF, ZT, ZLVFACT, ZLSFACT, & + PRRT, PCRT, PRIT, PCIT, ZLBDR, & + P_TH_CFRZ, P_RR_CFRZ, P_CR_CFRZ, P_RI_CFRZ, P_CI_CFRZ, & + PA_TH, PA_RR, PA_CR, PA_RI, PA_CI, PA_RG ) +END IF +! +IF (LWARM .AND. LCOLD) THEN + ! + ! Melting of graupel should account for collected droplets and drops where T>0C, but does not ! + ! Collection and water shedding should also happen where T>0C, but do not ! + ! Hail production as tendency (should be instant to stick to the previous version ?) + ! Includes Hallett-Mossop process for riming of droplets by graupel (HMG) + ! Some thermodynamical computations inside, to externalize ? + ! + CALL LIMA_GRAUPEL (PTSTEP, LDCOMPUTE, & + PRHODREF, PPABST, ZT, ZKA, ZDV, ZCJ, & + PRVT, PRCT, PRRT, PRIT, PRST, PRGT, & + PCCT, PCRT, PCIT, & + ZLBDC, ZLBDR, ZLBDS, ZLBDG, & + ZLVFACT, ZLSFACT, & + P_TH_WETG, P_RC_WETG, P_CC_WETG, P_RR_WETG, P_CR_WETG, & + P_RI_WETG, P_CI_WETG, P_RS_WETG, P_RG_WETG, P_RH_WETG, & + P_TH_DRYG, P_RC_DRYG, P_CC_DRYG, P_RR_DRYG, P_CR_DRYG, & + P_RI_DRYG, P_CI_DRYG, P_RS_DRYG, P_RG_DRYG, & + P_RI_HMG, P_CI_HMG, P_RG_HMG, & + P_TH_GMLT, P_RR_GMLT, P_CR_GMLT, & + PA_TH, PA_RC, PA_CC, PA_RR, PA_CR, & + PA_RI, PA_CI, PA_RS, PA_RG, PA_RH ) +END IF +! +IF (LWARM .AND. LCOLD .AND. LHAIL) THEN +! CALL LIMA_HAIL_GROWTH + +! CALL LIMA_HAIL_CONVERSION + +! CALL LIMA_HAIL_MELTING +END IF + ! +END SUBROUTINE LIMA_TENDENCIES diff --git a/src/MNH/lima_warm.f90 b/src/MNH/lima_warm.f90 index 818adaa1bb567d5ad2cf2ee148c8cf610fda4923..35961b3ba0a6cea51ad80c2935d0dce7c67377c7 100644 --- a/src/MNH/lima_warm.f90 +++ b/src/MNH/lima_warm.f90 @@ -8,13 +8,15 @@ ! ##################### ! INTERFACE - SUBROUTINE LIMA_WARM (OACTIT, OSEDC, ORAIN, KSPLITR, PTSTEP, KMI, & - KRR, PZZ, PRHODJ, & - PRHODREF, PEXNREF, PW_NU, PPABSM, PPABST, & - PTHM, PRCM, & - PTHT, PRT, PSVT, & - PTHS, PRS, PSVS, & - PINPRC, PINPRR, PINDEP, PINPRR3D, PEVAP3D ) + SUBROUTINE LIMA_WARM (OACTIT, OSEDC, ORAIN, KSPLITR, PTSTEP, KMI, & + TPFILE, OCLOSE_OUT, KRR, PZZ, PRHODJ,& + PRHODREF, PEXNREF, PW_NU, PPABSM, PPABST, & + PTHM, PRCM, & + PTHT, PRT, PSVT, & + PTHS, PRS, PSVS, & + PINPRC, PINPRR, PINDEP, PINPRR3D, PEVAP3D ) +! +USE MODD_IO_ll, ONLY: TFILEDATA ! LOGICAL, INTENT(IN) :: OACTIT ! Switch to activate the ! activation by radiative @@ -28,6 +30,9 @@ INTEGER, INTENT(IN) :: KSPLITR ! Number of small time ste REAL, INTENT(IN) :: PTSTEP ! Double Time step ! (single if cold start) INTEGER, INTENT(IN) :: KMI ! Model index +TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file +LOGICAL, INTENT(IN) :: OCLOSE_OUT ! Conditional closure of + ! the tput FM fileoutp INTEGER, INTENT(IN) :: KRR ! Number of moist variables ! REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Height (z) @@ -63,15 +68,15 @@ REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PEVAP3D ! Rain evap profile END SUBROUTINE LIMA_WARM END INTERFACE END MODULE MODI_LIMA_WARM -! ################################################################### - SUBROUTINE LIMA_WARM (OACTIT, OSEDC, ORAIN, KSPLITR, PTSTEP, KMI, & - KRR, PZZ, PRHODJ, & - PRHODREF, PEXNREF, PW_NU, PPABSM, PPABST, & - PTHM, PRCM, & - PTHT, PRT, PSVT, & - PTHS, PRS, PSVS, & - PINPRC, PINPRR, PINDEP, PINPRR3D, PEVAP3D ) -! ################################################################### +! ##################################################################### + SUBROUTINE LIMA_WARM (OACTIT, OSEDC, ORAIN, KSPLITR, PTSTEP, KMI, & + TPFILE, OCLOSE_OUT, KRR, PZZ, PRHODJ, & + PRHODREF, PEXNREF, PW_NU, PPABSM, PPABST, & + PTHM, PRCM, & + PTHT, PRT, PSVT, & + PTHS, PRS, PSVS, & + PINPRC, PINPRR, PINDEP, PINPRR3D, PEVAP3D ) +! ##################################################################### ! !! !! PURPOSE @@ -142,10 +147,12 @@ USE MODI_BUDGET USE MODE_FM USE MODE_FMWRIT ! -USE MODI_LIMA_WARM_SEDIM +USE MODI_LIMA_WARM_SEDIMENTATION USE MODI_LIMA_WARM_NUCL USE MODI_LIMA_WARM_COAL USE MODI_LIMA_WARM_EVAP +USE MODD_IO_ll, ONLY: TFILEDATA +USE MODD_LUNIT_n, ONLY: TLUOUT ! IMPLICIT NONE ! @@ -163,6 +170,9 @@ INTEGER, INTENT(IN) :: KSPLITR ! Number of small time ste REAL, INTENT(IN) :: PTSTEP ! Double Time step ! (single if cold start) INTEGER, INTENT(IN) :: KMI ! Model index +TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file +LOGICAL, INTENT(IN) :: OCLOSE_OUT ! Conditional closure of + ! the tput FM fileoutp INTEGER, INTENT(IN) :: KRR ! Number of moist variables ! REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Height (z) @@ -308,22 +318,19 @@ END IF ! ------------------------------------- ! ! -CALL LIMA_WARM_SEDIM (OSEDC, KSPLITR, PTSTEP, KMI, & - PZZ, PRHODREF, PPABST, ZT, & - ZWLBDC, & - PRCT, PRRT, PCCT, PCRT, & - PRCS, PRRS, PCCS, PCRS, & - PINPRC, PINPRR, & - PINPRR3D ) +CALL LIMA_WARM_SEDIMENTATION (OSEDC, KSPLITR, PTSTEP, KMI, & + PZZ, PRHODREF, PPABST, ZT, & + ZWLBDC, & + PRCT, PRRT, PCCT, PCRT, & + PRCS, PRRS, PCCS, PCRS, & + PINPRC, PINPRR, & + PINPRR3D ) ! -IF (LBUDGET_RC .AND. OSEDC) & - CALL BUDGET (PRCS(:,:,:)*PRHODJ(:,:,:),7 ,'SEDI_BU_RRC') -IF (LBUDGET_RR) CALL BUDGET (PRRS(:,:,:)*PRHODJ(:,:,:),8 ,'SEDI_BU_RRR') +IF (LBUDGET_RC .AND. OSEDC) CALL BUDGET (PRCS(:,:,:)*PRHODJ(:,:,:),7 ,'SEDI_BU_RRC') +IF (LBUDGET_RR .AND. ORAIN) CALL BUDGET (PRRS(:,:,:)*PRHODJ(:,:,:),8 ,'SEDI_BU_RRR') IF (LBUDGET_SV) THEN - IF (OSEDC) CALL BUDGET (PCCS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NC,& - &'SEDI_BU_RSV') ! RCC - IF (ORAIN) CALL BUDGET (PCRS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NR,& - &'SEDI_BU_RSV') ! RCR + IF (OSEDC) CALL BUDGET (PCCS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NC,'SEDI_BU_RSV') + IF (ORAIN) CALL BUDGET (PCRS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NR,'SEDI_BU_RSV') END IF ! ! 2.bis Deposition at 1st level above ground @@ -349,23 +356,21 @@ END IF ! -------------------------------------- ! ! -IF (LACTI) THEN +IF (LACTI .AND. NMOD_CCN.GE.1) THEN ! - CALL LIMA_WARM_NUCL (OACTIT, PTSTEP, KMI, & - PRHODREF, PEXNREF, PPABST, ZT, ZTM, PW_NU, & - PRCM, PRVT, PRCT, PRRT, & - PTHS, PRVS, PRCS, PCCS, PNFS, PNAS ) + CALL LIMA_WARM_NUCL (OACTIT, PTSTEP, KMI, TPFILE, OCLOSE_OUT,& + PRHODREF, PEXNREF, PPABST, ZT, ZTM, PW_NU, & + PRCM, PRVT, PRCT, PRRT, & + PTHS, PRVS, PRCS, PCCS, PNFS, PNAS ) ! IF (LBUDGET_TH) CALL BUDGET (PTHS(:,:,:)*PRHODJ(:,:,:),4,'HENU_BU_RTH') IF (LBUDGET_RV) CALL BUDGET (PRVS(:,:,:)*PRHODJ(:,:,:),6,'HENU_BU_RRV') IF (LBUDGET_RC) CALL BUDGET (PRCS(:,:,:)*PRHODJ(:,:,:),7,'HENU_BU_RRC') IF (LBUDGET_SV) THEN CALL BUDGET (PCCS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NC,'HENU_BU_RSV') ! RCN - IF (NMOD_CCN.GE.1) THEN DO JL=1, NMOD_CCN CALL BUDGET ( PNFS(:,:,:,JL)*PRHODJ(:,:,:),12+NSV_LIMA_CCN_FREE+JL-1,'HENU_BU_RSV') END DO - END IF END IF ! END IF ! LACTI @@ -392,12 +397,12 @@ END IF ! LACTI ! IF (ORAIN) THEN ! - CALL LIMA_WARM_EVAP (PTSTEP, KMI, & - PRHODREF, PEXNREF, PPABST, ZT, & - ZWLBDC3, ZWLBDC, ZWLBDR3, ZWLBDR, & - PRVT, PRCT, PRRT, PCRT, & - PRVS, PRCS, PRRS, PCCS, PCRS, PTHS, & - PEVAP3D ) + CALL LIMA_WARM_EVAP (PTSTEP, KMI, & + PRHODREF, PEXNREF, PPABST, ZT, & + ZWLBDC3, ZWLBDC, ZWLBDR3, ZWLBDR, & + PRVT, PRCT, PRRT, PCRT, & + PRVS, PRCS, PRRS, PCCS, PCRS, PTHS, & + PEVAP3D ) ! IF (LBUDGET_RV) CALL BUDGET (PRVS(:,:,:)*PRHODJ(:,:,:),6 ,'REVA_BU_RRV') IF (LBUDGET_RC) CALL BUDGET (PRCS(:,:,:)*PRHODJ(:,:,:),7 ,'REVA_BU_RRC') diff --git a/src/MNH/lima_warm_coal.f90 b/src/MNH/lima_warm_coal.f90 index f35e1d839d505686b2f76c6461cfb96546d50560..28a624e6bf4f400f8b4be72763c34502cae2a81b 100644 --- a/src/MNH/lima_warm_coal.f90 +++ b/src/MNH/lima_warm_coal.f90 @@ -276,7 +276,7 @@ IF (LRAIN) THEN ZZW1(:) = 0.0 WHERE( ZRCT(:)>XRTMIN(2) ) ZZW2(:) = MAX( 0.0,XLAUTR*ZRHODREF(:)*ZRCT(:)* & - (XAUTO1/ZLBDC(:)**4-XLAUTR_THRESHOLD) ) ! L + (XAUTO1/min(ZLBDC(:),1.e9)**4-XLAUTR_THRESHOLD) ) ! L ! ZZW3(:) = MIN( ZRCS(:), MAX( 0.0,XITAUTR*ZZW2(:)*ZRCT(:)* & (XAUTO2/ZLBDC(:)-XITAUTR_THRESHOLD) ) ) ! L/tau @@ -327,7 +327,7 @@ IF (LRAIN) THEN ALLOCATE(GENABLE_ACCR_SCBU(IMICRO)) GENABLE_ACCR_SCBU(:) = ZRRT(:)>1.2*ZZW2(:)/ZRHODREF(:) .OR. & ZZW4(:)>=MAX( XACCR2,XACCR3/(XACCR4/ZLBDC(:)-XACCR5) ) - GACCR(:) = GACCR(:) .AND. ZRCT(:)>XRTMIN(2) .AND. GENABLE_ACCR_SCBU(:) + GACCR(:) = GACCR(:) .AND. ZRCT(:)>XRTMIN(2) .AND. ZCCT(:)>XCTMIN(2) .AND. GENABLE_ACCR_SCBU(:) END IF ! IACCR = COUNT(GACCR(:)) @@ -344,8 +344,9 @@ IF (LRAIN) THEN ZRRS(:) = ZRRS(:) + ZZW2(:) END WHERE WHERE( GACCR(:).AND.(ZZW4(:)<=1.E-4) ) ! Accretion for D<100 10-6 m - ZZW3(:) = ZLBDC3(:) / ZLBDR3(:) - ZZW1(:) = ( ZCCT(:)*ZCRT(:) / ZLBDC3(:)**2 )*ZRHODREF(:) + ZZW3(:) = MIN(ZLBDC3(:) / ZLBDR3(:), 1.E8) + ZZW1(:) = ( ZCCT(:)*ZCRT(:) / ZLBDC3(:) )*ZRHODREF(:) + ZZW1(:) = ZZW1(:) / ZLBDC3(:) ZZW3(:) = ZZW3(:)**2 ZZW2(:) = MIN( ZZW1(:)*(XACCR_CSMALL1+XACCR_CSMALL2*ZZW3(:)),ZCCS(:) ) ZCCS(:) = ZCCS(:) - ZZW2(:) @@ -473,16 +474,16 @@ ELSE ! IF (LBUDGET_SV) CALL BUDGET (PCCS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NC,'SELF_BU_RSV') ! - IF (LBUDGET_RC) CALL BUDGET (PRCS(:,:,:)*PRHODJ(:,:,:),7 ,'AUTO_BU_RRC') - IF (LBUDGET_RR) CALL BUDGET (PRRS(:,:,:)*PRHODJ(:,:,:),8 ,'AUTO_BU_RRR') - IF (LBUDGET_SV) CALL BUDGET (PCRS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NR,'AUTO_BU_RSV') - IF (LBUDGET_SV) CALL BUDGET (PCCS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NC,'AUTO_BU_RSV') + IF (LBUDGET_RC .AND. LRAIN) CALL BUDGET (PRCS(:,:,:)*PRHODJ(:,:,:),7 ,'AUTO_BU_RRC') + IF (LBUDGET_RR .AND. LRAIN) CALL BUDGET (PRRS(:,:,:)*PRHODJ(:,:,:),8 ,'AUTO_BU_RRR') + IF (LBUDGET_SV .AND. LRAIN) CALL BUDGET (PCRS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NR,'AUTO_BU_RSV') + IF (LBUDGET_SV .AND. LRAIN) CALL BUDGET (PCCS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NC,'AUTO_BU_RSV') ! - IF (LBUDGET_RC) CALL BUDGET (PRCS(:,:,:)*PRHODJ(:,:,:),7 ,'ACCR_BU_RRC') - IF (LBUDGET_RR) CALL BUDGET (PRRS(:,:,:)*PRHODJ(:,:,:),8 ,'ACCR_BU_RRR') - IF (LBUDGET_SV) CALL BUDGET (PCCS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NC,'ACCR_BU_RSV') + IF (LBUDGET_RC .AND. LRAIN) CALL BUDGET (PRCS(:,:,:)*PRHODJ(:,:,:),7 ,'ACCR_BU_RRC') + IF (LBUDGET_RR .AND. LRAIN) CALL BUDGET (PRRS(:,:,:)*PRHODJ(:,:,:),8 ,'ACCR_BU_RRR') + IF (LBUDGET_SV .AND. LRAIN) CALL BUDGET (PCCS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NC,'ACCR_BU_RSV') ! - IF (LBUDGET_SV) CALL BUDGET (PCRS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NR,'SCBU_BU_RSV') + IF (LBUDGET_SV .AND. LRAIN) CALL BUDGET (PCRS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NR,'SCBU_BU_RSV') END IF ! IMICRO ! diff --git a/src/MNH/lima_warm_evap.f90 b/src/MNH/lima_warm_evap.f90 index 5fd0131b34f82c8328e3b57803455a153d72d3e0..aa8b7a9840e7d7352ce25714d4bf4e1f927a5847 100644 --- a/src/MNH/lima_warm_evap.f90 +++ b/src/MNH/lima_warm_evap.f90 @@ -8,11 +8,11 @@ ! ########################## ! INTERFACE - SUBROUTINE LIMA_WARM_EVAP (PTSTEP, KMI, & - PRHODREF, PEXNREF, PPABST, ZT, & - ZWLBDC3, ZWLBDC, ZWLBDR3, ZWLBDR, & - PRVT, PRCT, PRRT, PCRT, & - PRVS, PRCS, PRRS, PCCS, PCRS, PTHS, & + SUBROUTINE LIMA_WARM_EVAP (PTSTEP, KMI, & + PRHODREF, PEXNREF, PPABST, ZT, & + ZWLBDC3, ZWLBDC, ZWLBDR3, ZWLBDR, & + PRVT, PRCT, PRRT, PCRT, & + PRVS, PRCS, PRRS, PCCS, PCRS, PTHS, & PEVAP3D) ! REAL, INTENT(IN) :: PTSTEP ! Double Time step @@ -47,14 +47,14 @@ REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PEVAP3D ! Rain evap profile END SUBROUTINE LIMA_WARM_EVAP END INTERFACE END MODULE MODI_LIMA_WARM_EVAP -! ################################################################ - SUBROUTINE LIMA_WARM_EVAP (PTSTEP, KMI, & - PRHODREF, PEXNREF, PPABST, ZT, & - ZWLBDC3, ZWLBDC, ZWLBDR3, ZWLBDR, & - PRVT, PRCT, PRRT, PCRT, & - PRVS, PRCS, PRRS, PCCS, PCRS, PTHS, & +! ############################################################################# + SUBROUTINE LIMA_WARM_EVAP (PTSTEP, KMI, & + PRHODREF, PEXNREF, PPABST, ZT, & + ZWLBDC3, ZWLBDC, ZWLBDR3, ZWLBDR, & + PRVT, PRCT, PRRT, PCRT, & + PRVS, PRCS, PRRS, PCCS, PCRS, PTHS, & PEVAP3D) -! ################################################################ +! ############################################################################# ! !! !! PURPOSE @@ -150,7 +150,7 @@ REAL, DIMENSION(:), ALLOCATABLE :: ZZW1, ZZW2, ZZW3, & ZZLV ! Latent heat of vaporization at T ! REAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & - :: ZW, ZW2, ZRVSAT + :: ZW, ZW2, ZRVSAT, ZDR ! ! REAL :: ZEPS, ZFACT @@ -294,47 +294,51 @@ IF( IEVAP >= 1 ) THEN ! --------------------------------------- ! ! - GEVAP(:,:,:) = PRRS(:,:,:)>ZRTMIN(3) .AND. PCRS(:,:,:)>ZCTMIN(3) .AND. & - PRCS(:,:,:)>ZRTMIN(2) .AND. PCCS(:,:,:)>ZCTMIN(2) + GEVAP(:,:,:) = PRRS(:,:,:)>ZRTMIN(3) .AND. PCRS(:,:,:)>ZCTMIN(3) + ZDR(:,:,:) = 9999. WHERE (GEVAP(:,:,:)) + ZDR(:,:,:)=(6.*PRRS(:,:,:)/XPI/XRHOLW/PCRS(:,:,:))**0.33 ZWLBDR3(:,:,:) = XLBR * PCRS(:,:,:) / PRRS(:,:,:) ZWLBDR(:,:,:) = ZWLBDR3(:,:,:)**XLBEXR -! - ZWLBDC3(:,:,:) = XLBC * PCCS(:,:,:) / PRCS(:,:,:) - ZWLBDC(:,:,:) = ZWLBDC3(:,:,:)**XLBEXC - ZWLBDC3(:,:,:) = (XACCR1/XACCR3)*(XACCR4/ZWLBDC(:,:,:)-XACCR5) ! 1/D_h, not "Lambda_h" - END WHERE -! - GMICRO(:,:,:) = GEVAP(:,:,:) .AND. ZWLBDR(:,:,:)>ZWLBDC3(:,:,:) - ! the raindrops are too small, that is lower than D_h - ZFACT = 1.2E4*XACCR1 - WHERE (GMICRO(:,:,:)) - ZWLBDC(:,:,:) = XLBR / MIN( ZFACT,ZWLBDC3(:,:,:) )**3 - ZW(:,:,:) = MIN( MAX( & - (PRHODREF(:,:,:)*PRRS(:,:,:) - ZWLBDC(:,:,:)*PCRS(:,:,:)) / & - (PRHODREF(:,:,:)*PRCS(:,:,:)/PCCS(:,:,:) - ZWLBDC(:,:,:)) , & - 0.0 ),PCRS(:,:,:), & - PCCS(:,:,:)*PRRS(:,:,:)/(PRCS(:,:,:))) -! -! Compute the percent (=1 if (ZWLBDR/XACCR1) >= 1.2E4 -! of transfer with (=0 if (ZWLBDR/XACCR1) <= (XACCR4/ZWLBDC-XACCR5)/XACCR3 -! - ZW(:,:,:) = ZW(:,:,:)*( (MIN(ZWLBDR(:,:,:),1.2E4*XACCR1)-ZWLBDC3(:,:,:)) / & - ( 1.2E4*XACCR1 -ZWLBDC3(:,:,:)) ) -! - ZW2(:,:,:) = PCCS(:,:,:) !temporary storage - PCCS(:,:,:) = PCCS(:,:,:)+ZW(:,:,:) - PCRS(:,:,:) = PCRS(:,:,:)-ZW(:,:,:) - ZW(:,:,:) = ZW(:,:,:) * (PRHODREF(:,:,:)*PRCS(:,:,:)/ZW2(:,:,:)) - PRCS(:,:,:) = PRCS(:,:,:)+ZW(:,:,:) - PRRS(:,:,:) = PRRS(:,:,:)-ZW(:,:,:) END WHERE -! - GEVAP(:,:,:) = PRRS(:,:,:)<ZRTMIN(3) .OR. PCRS(:,:,:)<ZCTMIN(3) - WHERE (GEVAP(:,:,:)) - PCRS(:,:,:) = 0.0 - PRRS(:,:,:) = 0.0 + ! + WHERE (GEVAP(:,:,:) .AND. ZDR(:,:,:).LT.82.E-6) + PCCS(:,:,:) = PCCS(:,:,:)+PCRS(:,:,:) + PCRS(:,:,:) = 0. + PRCS(:,:,:) = PRCS(:,:,:)+PRRS(:,:,:) + PRRS(:,:,:) = 0. END WHERE + +!!$ GMICRO(:,:,:) = GEVAP(:,:,:) .AND. ZWLBDR(:,:,:)/XACCR1>ZWLBDC3(:,:,:) +!!$ ! the raindrops are too small, that is lower than D_h +!!$ ZFACT = 1.2E4*XACCR1 +!!$ WHERE (GMICRO(:,:,:)) +!!$ ZWLBDC(:,:,:) = XLBR / MIN( ZFACT,ZWLBDC3(:,:,:) )**3 +!!$ ZW(:,:,:) = MIN( MAX( & +!!$ (PRHODREF(:,:,:)*PRRS(:,:,:) - ZWLBDC(:,:,:)*PCRS(:,:,:)) / & +!!$ (PRHODREF(:,:,:)*PRCS(:,:,:)/PCCS(:,:,:) - ZWLBDC(:,:,:)) , & +!!$ 0.0 ),PCRS(:,:,:), & +!!$ PCCS(:,:,:)*PRRS(:,:,:)/(PRCS(:,:,:))) +!!$! +!!$! Compute the percent (=1 if (ZWLBDR/XACCR1) >= 1.2E4 +!!$! of transfer with (=0 if (ZWLBDR/XACCR1) <= (XACCR4/ZWLBDC-XACCR5)/XACCR3 +!!$! +!!$ ZW(:,:,:) = ZW(:,:,:)*( (MIN(ZWLBDR(:,:,:),1.2E4*XACCR1)-ZWLBDC3(:,:,:)) / & +!!$ ( 1.2E4*XACCR1 -ZWLBDC3(:,:,:)) ) +!!$! +!!$ ZW2(:,:,:) = PCCS(:,:,:) !temporary storage +!!$ PCCS(:,:,:) = PCCS(:,:,:)+ZW(:,:,:) +!!$ PCRS(:,:,:) = PCRS(:,:,:)-ZW(:,:,:) +!!$ ZW(:,:,:) = ZW(:,:,:) * (PRHODREF(:,:,:)*PRCS(:,:,:)/ZW2(:,:,:)) +!!$ PRCS(:,:,:) = PRCS(:,:,:)+ZW(:,:,:) +!!$ PRRS(:,:,:) = PRRS(:,:,:)-ZW(:,:,:) +!!$ END WHERE +!!$! +!!$ GEVAP(:,:,:) = PRRS(:,:,:)<ZRTMIN(3) .OR. PCRS(:,:,:)<ZCTMIN(3) +!!$ WHERE (GEVAP(:,:,:)) +!!$ PCRS(:,:,:) = 0.0 +!!$ PRRS(:,:,:) = 0.0 +!!$ END WHERE ! END IF ! IEVAP ! diff --git a/src/MNH/lima_warm_nucl.f90 b/src/MNH/lima_warm_nucl.f90 index 8ba955c65069a5a82f5fdd0744cca3f26dbb7c2f..c670a567887be0d5414d036a4611adba33dc7233 100644 --- a/src/MNH/lima_warm_nucl.f90 +++ b/src/MNH/lima_warm_nucl.f90 @@ -8,10 +8,12 @@ ! ########################## ! INTERFACE - SUBROUTINE LIMA_WARM_NUCL (OACTIT, PTSTEP, KMI, & - PRHODREF, PEXNREF, PPABST, ZT, ZTM, PW_NU, & - PRCM, PRVT, PRCT, PRRT, & - PTHS, PRVS, PRCS, PCCS, PNFS, PNAS ) + SUBROUTINE LIMA_WARM_NUCL (OACTIT, PTSTEP, KMI, TPFILE, OCLOSE_OUT,& + PRHODREF, PEXNREF, PPABST, ZT, ZTM, PW_NU, & + PRCM, PRVT, PRCT, PRRT, & + PTHS, PRVS, PRCS, PCCS, PNFS, PNAS ) +! +USE MODD_IO_ll, ONLY: TFILEDATA ! LOGICAL, INTENT(IN) :: OACTIT ! Switch to activate the ! activation by radiative @@ -19,6 +21,9 @@ LOGICAL, INTENT(IN) :: OACTIT ! Switch to activate the REAL, INTENT(IN) :: PTSTEP ! Double Time step ! (single if cold start) INTEGER, INTENT(IN) :: KMI ! Model index +TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file +LOGICAL, INTENT(IN) :: OCLOSE_OUT ! Conditional closure of + ! the output FM file ! REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function @@ -46,12 +51,12 @@ REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNAS ! CCN C. activated source END SUBROUTINE LIMA_WARM_NUCL END INTERFACE END MODULE MODI_LIMA_WARM_NUCL -! ####################################################################### - SUBROUTINE LIMA_WARM_NUCL (OACTIT, PTSTEP, KMI, & - PRHODREF, PEXNREF, PPABST, ZT, ZTM, PW_NU, & - PRCM, PRVT, PRCT, PRRT, & - PTHS, PRVS, PRCS, PCCS, PNFS, PNAS ) -! ####################################################################### +! ############################################################################# + SUBROUTINE LIMA_WARM_NUCL (OACTIT, PTSTEP, KMI, TPFILE, OCLOSE_OUT,& + PRHODREF, PEXNREF, PPABST, ZT, ZTM, PW_NU, & + PRCM, PRVT, PRCT, PRRT, & + PTHS, PRVS, PRCS, PCCS, PNFS, PNAS ) +! ############################################################################# ! !! !! PURPOSE @@ -111,6 +116,12 @@ USE MODD_PARAM_LIMA_WARM USE MODI_GAMMA USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV ! +USE MODE_FM +USE MODE_FMWRIT +USE MODD_IO_ll, ONLY: TFILEDATA +USE MODD_LUNIT_n, ONLY: TLUOUT +USE MODE_FIELD, ONLY : TFIELDDATA, TYPEREAL +! IMPLICIT NONE ! !* 0.1 Declarations of dummy arguments : @@ -121,6 +132,9 @@ LOGICAL, INTENT(IN) :: OACTIT ! Switch to activate the REAL, INTENT(IN) :: PTSTEP ! Double Time step ! (single if cold start) INTEGER, INTENT(IN) :: KMI ! Model index +TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file +LOGICAL, INTENT(IN) :: OCLOSE_OUT ! Conditional closure of + ! the output FM file ! REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function @@ -175,7 +189,7 @@ REAL, DIMENSION(:), ALLOCATABLE :: ZZW1, ZZW2, ZZW3, ZZW4, ZZW5, ZZW6, & REAL, DIMENSION(:,:), ALLOCATABLE :: ZTMP, ZCHEN_MULTI ! REAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & - :: ZTDT, ZDRC, ZRVSAT, ZW + :: ZTDT, ZDRC, ZRVSAT, ZW, ZW2 REAL, DIMENSION(SIZE(PNFS,1),SIZE(PNFS,2),SIZE(PNFS,3)) & :: ZCONC_TOT ! total CCN C. available ! @@ -188,8 +202,12 @@ REAL :: ZS1, ZS2, ZXACC INTEGER :: JMOD INTEGER :: IIB, IIE, IJB, IJE, IKB, IKE ! Physical domain ! +INTEGER :: ILUOUT ! Logical unit of output listing +TYPE(TFIELDDATA) :: TZFIELD !------------------------------------------------------------------------------- ! +ILUOUT = TLUOUT%NLU +ZW(:,:,:)=0. ! !* 1. PREPARE COMPUTATIONS - PACK ! --------------------------- @@ -218,13 +236,13 @@ ZEPS= XMV / XMD ZRVSAT(:,:,:) = ZEPS / (PPABST(:,:,:) * & EXP(-XALPW+XBETAW/ZT(:,:,:)+XGAMW*ALOG(ZT(:,:,:))) - 1.0) ZTDT(:,:,:) = 0. -ZDRC(:,:,:) = 0. +!! ZDRC(:,:,:) = 0. IF (OACTIT) THEN ZTDT(:,:,:) = (ZT(:,:,:)-ZTM(:,:,:))/PTSTEP ! dT/dt !!! JPP !!! JPP !!! ZDRC(:,:,:) = (PRCT(:,:,:)-PRCM(:,:,:))/PTSTEP ! drc/dt - ZDRC(:,:,:) = PRCS(:,:,:)-(PRCT(:,:,:)/PTSTEP) ! drc/dt +!! ZDRC(:,:,:) = PRCS(:,:,:)-(PRCT(:,:,:)/PTSTEP) ! drc/dt !!! JPP !!! JPP !! @@ -249,12 +267,14 @@ GNUCT(:,:,:) = .FALSE. ! NEW : -22°C = limit sup for condensation freezing in Fridlin et al., 2007 IF( OACTIT ) THEN GNUCT(IIB:IIE,IJB:IJE,IKB:IKE) = (PW_NU(IIB:IIE,IJB:IJE,IKB:IKE)>XWMIN .OR. & - ZTDT(IIB:IIE,IJB:IJE,IKB:IKE)<XTMIN) .AND.& + ZTDT(IIB:IIE,IJB:IJE,IKB:IKE)<XTMIN .OR. & + PRVT(IIB:IIE,IJB:IJE,IKB:IKE)>ZRVSAT(IIB:IIE,IJB:IJE,IKB:IKE) ) .AND.& PRVT(IIB:IIE,IJB:IJE,IKB:IKE)>(0.98*ZRVSAT(IIB:IIE,IJB:IJE,IKB:IKE))& .AND. ZT(IIB:IIE,IJB:IJE,IKB:IKE)>(XTT-22.) & .AND. ZCONC_TOT(IIB:IIE,IJB:IJE,IKB:IKE)>ZCTMIN(4) ELSE - GNUCT(IIB:IIE,IJB:IJE,IKB:IKE) = PW_NU(IIB:IIE,IJB:IJE,IKB:IKE)>XWMIN .AND.& + GNUCT(IIB:IIE,IJB:IJE,IKB:IKE) = (PW_NU(IIB:IIE,IJB:IJE,IKB:IKE)>XWMIN .OR. & + PRVT(IIB:IIE,IJB:IJE,IKB:IKE)>ZRVSAT(IIB:IIE,IJB:IJE,IKB:IKE) ) .AND.& PRVT(IIB:IIE,IJB:IJE,IKB:IKE)>(0.98*ZRVSAT(IIB:IIE,IJB:IJE,IKB:IKE))& .AND. ZT(IIB:IIE,IJB:IJE,IKB:IKE)>(XTT-22.) & .AND. ZCONC_TOT(IIB:IIE,IJB:IJE,IKB:IKE)>ZCTMIN(4) @@ -312,7 +332,7 @@ IF( INUCT >= 1 ) THEN ! Remark : in LIMA's nucleation parameterization, Smax=0.01 for a supersaturation of 1% ! ! ! - ZVEC1(:) = MAX( ( 1.0 + 10.0 * XMNH_EPSILON ), MIN( FLOAT(NAHEN)*( 1.0 - 10.0 * XMNH_EPSILON ), & + ZVEC1(:) = MAX( 1.0001, MIN( FLOAT(NAHEN)-0.0001, & XAHENINTP1 * ZZT(:) + XAHENINTP2 ) ) IVEC1(:) = INT( ZVEC1(:) ) ZVEC1(:) = ZVEC1(:) - FLOAT( IVEC1(:) ) @@ -349,6 +369,7 @@ IF( INUCT >= 1 ) THEN ! 2 pi rho_l * G**(3/2) ! ! + ZZW2(:)=MAX(ZZW2(:),0.) ZZW3(:)=XAHENG(IVEC1(:)+1)*((XPSI1(IVEC1(:)+1)*ZZW2(:))**1.5)* ZVEC1(:) & -XAHENG(IVEC1(:) )*((XPSI1(IVEC1(:) )*ZZW2(:))**1.5)*(ZVEC1(:)-1.0) ! @@ -362,7 +383,7 @@ IF( INUCT >= 1 ) THEN ZZW5(:) = 1. ZZW3(:) = (ZZW3(:)/ZZW1(:))*ZRHODREF(:) ! R.H.S. of Eq 9 of CPB 98 but ! for multiple aerosol modes - WHERE (ZZW3(:) == 0.) + WHERE (ZZW3(:) == 0. .AND. .NOT.(ZSW>0.)) ZZW5(:) = -1. END WHERE ! @@ -398,7 +419,7 @@ IF( INUCT >= 1 ) THEN ! Modified values for Beta and C (see in init_aerosol_properties) account for that ! WHERE (ZZW5(:) > 0. .AND. ZSMAX(:) > 0.) - ZVEC1(:) = MAX( ( 1.0 + 10.0 * XMNH_EPSILON ), MIN( FLOAT(NHYP)*( 1.0 - 10.0 * XMNH_EPSILON ), & + ZVEC1(:) = MAX( 1.0001, MIN( FLOAT(NHYP)-0.0001, & XHYPINTP1*LOG(ZSMAX(:))+XHYPINTP2 ) ) IVEC1(:) = INT( ZVEC1(:) ) ZVEC1(:) = ZVEC1(:) - FLOAT( IVEC1(:) ) @@ -469,6 +490,7 @@ IF( INUCT >= 1 ) THEN PCCS(:,:,:) = UNPACK( ZZW6(:)+ZCCS(:),MASK=GNUCT(:,:,:),FIELD=ZW(:,:,:) ) ! ZW(:,:,:) = UNPACK( 100.0*ZSMAX(:),MASK=GNUCT(:,:,:),FIELD=0.0 ) + ZW2(:,:,:) = UNPACK( ZZW6(:),MASK=GNUCT(:,:,:),FIELD=0.0 ) ! ! !------------------------------------------------------------------------------- @@ -502,6 +524,27 @@ END IF ! INUCT !++cb++ DEALLOCATE(ZCTMIN) !--cb-- +IF ( OCLOSE_OUT ) THEN + TZFIELD%CMNHNAME ='SMAX' + TZFIELD%CSTDNAME = '' + TZFIELD%CLONGNAME = TRIM(TZFIELD%CMNHNAME) + TZFIELD%CCOMMENT = 'X_Y_Z_SMAX' + TZFIELD%NGRID = 1 + TZFIELD%NTYPE = TYPEREAL + TZFIELD%NDIMS = 3 + TZFIELD%LTIMEDEP = .TRUE. + CALL IO_WRITE_FIELD(TPFILE,TZFIELD,ZW) + ! + TZFIELD%CMNHNAME ='NACT' + TZFIELD%CSTDNAME = '' + TZFIELD%CLONGNAME = TRIM(TZFIELD%CMNHNAME) + TZFIELD%CCOMMENT = 'X_Y_Z_NACT' + TZFIELD%NGRID = 1 + TZFIELD%NTYPE = TYPEREAL + TZFIELD%NDIMS = 3 + TZFIELD%LTIMEDEP = .TRUE. + CALL IO_WRITE_FIELD(TPFILE,TZFIELD,ZW2) +END IF ! ! !------------------------------------------------------------------------------- @@ -797,7 +840,7 @@ REAL :: PZVEC1 INTEGER :: PIVEC1 ! PSINGL_FUNCSMAX = 0. -PZVEC1 = MAX( ( 1.0 + 10.0 * XMNH_EPSILON ),MIN( FLOAT(NHYP)*( 1.0 - 10.0 * XMNH_EPSILON ), & +PZVEC1 = MAX( 1.0001,MIN( FLOAT(NHYP)-0.0001, & XHYPINTP1*LOG(PPZSMAX)+XHYPINTP2 ) ) PIVEC1 = INT( PZVEC1 ) PZVEC1 = PZVEC1 - FLOAT( PIVEC1 ) diff --git a/src/MNH/lima_warm_sedimentation.f90 b/src/MNH/lima_warm_sedimentation.f90 new file mode 100644 index 0000000000000000000000000000000000000000..f52838161410316a2fcc3a3a500f40a63c3ff07c --- /dev/null +++ b/src/MNH/lima_warm_sedimentation.f90 @@ -0,0 +1,391 @@ +!MNH_LIC Copyright 2013-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence +!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt +!MNH_LIC for details. version 1. +! ################################### + MODULE MODI_LIMA_WARM_SEDIMENTATION +! ################################### +! +INTERFACE + SUBROUTINE LIMA_WARM_SEDIMENTATION (OSEDC, KSPLITR, PTSTEP, KMI, & + PZZ, PRHODREF, PPABST, ZT, & + ZWLBDC, & + PRCT, PRRT, PCCT, PCRT, & + PRCS, PRRS, PCCS, PCRS, & + PINPRC, PINPRR, PINPRR3D ) +! +LOGICAL, INTENT(IN) :: OSEDC ! switch to activate the + ! cloud droplet sedimentation +INTEGER, INTENT(IN) :: KSPLITR ! Number of small time step + ! for sedimendation +REAL, INTENT(IN) :: PTSTEP ! Double Time step + ! (single if cold start) +INTEGER, INTENT(IN) :: KMI ! Model index +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Height (z) +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +REAL, DIMENSION(:,:,:), INTENT(IN) :: ZT ! Temperature +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: ZWLBDC ! libre parcours moyen +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCRT ! Rain water C. at t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRCS ! Cloud water m.r. source +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRRS ! Rain water m.r. source +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCCS ! Cloud water C. source +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCRS ! Rain water C. source +! +REAL, DIMENSION(:,:), INTENT(INOUT) :: PINPRC ! Cloud instant precip +REAL, DIMENSION(:,:), INTENT(INOUT) :: PINPRR ! Rain instant precip +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PINPRR3D ! Rain inst precip 3D +! +END SUBROUTINE LIMA_WARM_SEDIMENTATION +END INTERFACE +END MODULE MODI_LIMA_WARM_SEDIMENTATION +! ##################################################################### + SUBROUTINE LIMA_WARM_SEDIMENTATION (OSEDC, KSPLITR, PTSTEP, KMI, & + PZZ, PRHODREF, PPABST, ZT, & + ZWLBDC, & + PRCT, PRRT, PCCT, PCRT, & + PRCS, PRRS, PCCS, PCRS, & + PINPRC, PINPRR, PINPRR3D ) +! ##################################################################### +! +!! +!! PURPOSE +!! ------- +!! The purpose of this routine is to compute the sedimentation +!! of cloud droplets and rain drops +!! +!! +!!** METHOD +!! ------ +!! The sedimentation rates are computed with a time spliting technique: +!! an upstream scheme, written as a difference of non-advective fluxes. +!! This source term is added to the next coming time step (split-implicit +!! process). +!! +!! +!! REFERENCE +!! --------- +!! +!! Cohard, J.-M. and J.-P. Pinty, 2000: A comprehensive two-moment warm +!! microphysical bulk scheme. +!! Part I: Description and tests +!! Part II: 2D experiments with a non-hydrostatic model +!! Accepted for publication in Quart. J. Roy. Meteor. Soc. +!! +!! AUTHOR +!! ------ +!! J.-M. Cohard * Laboratoire d'Aerologie* +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! S. Berthet * Laboratoire d'Aerologie* +!! B. Vié * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original ??/??/13 +!! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_PARAMETERS, ONLY : JPHEXT, JPVEXT +USE MODD_CST, ONLY : XRHOLW +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN, XALPHAC, XNUC, XCEXVT +USE MODD_PARAM_LIMA_WARM, ONLY : XLBC, XLBEXC, XLBR, XLBEXR, & + XFSEDRC, XFSEDCC, XFSEDRR, XFSEDCR,& + XDC, XDR +USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV +USE MODI_GAMMA, ONLY : GAMMA_X0D +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +LOGICAL, INTENT(IN) :: OSEDC ! switch to activate the + ! cloud droplet sedimentation +INTEGER, INTENT(IN) :: KSPLITR ! Number of small time step + ! for sedimendation +REAL, INTENT(IN) :: PTSTEP ! Double Time step + ! (single if cold start) +INTEGER, INTENT(IN) :: KMI ! Model index +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Height (z) +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density +REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! abs. pressure at time t +REAL, DIMENSION(:,:,:), INTENT(IN) :: ZT ! Temperature +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: ZWLBDC ! libre parcours moyen +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRCT ! Cloud water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRT ! Rain water m.r. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCCT ! Cloud water C. at t +REAL, DIMENSION(:,:,:), INTENT(IN) :: PCRT ! Rain water C. at t +! +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRCS ! Cloud water m.r. source +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRRS ! Rain water m.r. source +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCCS ! Cloud water C. source +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCRS ! Rain water C. source +! +REAL, DIMENSION(:,:), INTENT(INOUT) :: PINPRC ! Cloud instant precip +REAL, DIMENSION(:,:), INTENT(INOUT) :: PINPRR ! Rain instant precip +REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PINPRR3D ! Rain inst precip 3D +! +! +!* 0.2 Declarations of local variables : +! +! Packing variables +LOGICAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) :: GSEDIM +INTEGER :: ISEDIM +INTEGER , DIMENSION(SIZE(GSEDIM)) :: I1,I2,I3 ! Used to replace the COUNT +INTEGER :: JL ! and PACK intrinsics +! +! Packed micophysical variables +REAL, DIMENSION(:) , ALLOCATABLE :: ZRCT ! Cloud water m.r. at t +REAL, DIMENSION(:) , ALLOCATABLE :: ZRRT ! Rain water m.r. at t +REAL, DIMENSION(:) , ALLOCATABLE :: ZCCT ! cloud conc. at t +REAL, DIMENSION(:) , ALLOCATABLE :: ZCRT ! rain conc. at t +! +REAL, DIMENSION(:) , ALLOCATABLE :: ZRCS ! Cloud water m.r. source +REAL, DIMENSION(:) , ALLOCATABLE :: ZRRS ! Rain water m.r. source +REAL, DIMENSION(:) , ALLOCATABLE :: ZCCS ! cloud conc. source +REAL, DIMENSION(:) , ALLOCATABLE :: ZCRS ! rain conc. source +! +! Other packed variables +REAL, DIMENSION(:) , ALLOCATABLE :: ZRHODREF ! RHO Dry REFerence +REAL, DIMENSION(:) , ALLOCATABLE :: ZLBDC +REAL, DIMENSION(:) , ALLOCATABLE :: ZLBDR +! +! Work arrays +REAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & + :: ZW, & + ZWLBDA, & ! Mean free path + ZWSEDR, ZWSEDC, & ! Sedim. fluxes + ZRAY, & ! Mean volumic radius + ZCC ! Terminal vertical velocity +! +REAL, DIMENSION(:), ALLOCATABLE :: ZZW1, ZZW2, ZZW3, & + ZTCC, & + ZRTMIN, ZCTMIN +! +! +INTEGER :: JK ! Vertical loop index for the rain sedimentation +INTEGER :: JN ! Temporal loop index for the rain sedimentation +INTEGER :: IIB, IIE, IJB, IJE, IKB, IKE ! Physical domain +REAL :: ZTSPLITR ! Small time step for rain sedimentation +! +!------------------------------------------------------------------------------- +! +! 0. Prepare computations +! ----------------------- +! +! +ALLOCATE(ZRTMIN(SIZE(XCTMIN))) +ALLOCATE(ZCTMIN(SIZE(XCTMIN))) +ZRTMIN(:) = XRTMIN(:) / PTSTEP +ZCTMIN(:) = XCTMIN(:) / PTSTEP +! +IIB=1+JPHEXT +IIE=SIZE(PZZ,1) - JPHEXT +IJB=1+JPHEXT +IJE=SIZE(PZZ,2) - JPHEXT +IKB=1+JPVEXT +IKE=SIZE(PZZ,3) - JPVEXT +! +ZTSPLITR= PTSTEP / FLOAT(KSPLITR) +! +PINPRC(:,:) = 0. +PINPRR(:,:) = 0. +PINPRR3D(:,:,:) = 0. +! +IF (OSEDC) THEN + ZWLBDA(:,:,:) = 0. + ZRAY(:,:,:) = 0. + ZCC(:,:,:) = 1. + DO JK=IKB,IKE + ZWLBDA(:,:,JK) = 6.6E-8*(101325./PPABST(:,:,JK))*(ZT(:,:,JK)/293.15) + END DO + WHERE (PRCT(:,:,:)>XRTMIN(2) .AND. PCCT(:,:,:)>XCTMIN(2)) + ZRAY(:,:,:) = 0.5*GAMMA_X0D(XNUC+1./XALPHAC)/(GAMMA_X0D(XNUC)*ZWLBDC(:,:,:)) + ! ZCC : Corrective Cunningham term for the terminal velocity + ZCC(:,:,:)=1.+1.26*ZWLBDA(:,:,:)/ZRAY(:,:,:) + END WHERE +END IF +! +!------------------------------------------------------------------------------- +! +! +! 1. Computations only where necessary +! ------------------------------------ +! +! +DO JN = 1 , KSPLITR + GSEDIM(:,:,:) = .FALSE. + GSEDIM(IIB:IIE,IJB:IJE,IKB:IKE) = PRRS(IIB:IIE,IJB:IJE,IKB:IKE)>ZRTMIN(3) & + .AND. PCRS(IIB:IIE,IJB:IJE,IKB:IKE)>ZCTMIN(3) + IF( OSEDC ) THEN + GSEDIM(IIB:IIE,IJB:IJE,IKB:IKE) = GSEDIM(IIB:IIE,IJB:IJE,IKB:IKE) .OR. & + (PRCS(IIB:IIE,IJB:IJE,IKB:IKE)>ZRTMIN(2) & + .AND. PCCS(IIB:IIE,IJB:IJE,IKB:IKE)>ZCTMIN(2) ) + END IF +! + ISEDIM = COUNTJV( GSEDIM(:,:,:),I1(:),I2(:),I3(:)) + IF( ISEDIM >= 1 ) THEN +! + IF( JN==1 ) THEN + IF( OSEDC ) THEN + PRCS(:,:,:) = PRCS(:,:,:) * PTSTEP + PCCS(:,:,:) = PCCS(:,:,:) * PTSTEP + END IF + PRRS(:,:,:) = PRRS(:,:,:) * PTSTEP + PCRS(:,:,:) = PCRS(:,:,:) * PTSTEP + DO JK = IKB , IKE + ZW(:,:,JK)=ZTSPLITR/(PZZ(:,:,JK+1)-PZZ(:,:,JK)) + END DO + END IF +! + ALLOCATE(ZRHODREF(ISEDIM)) + DO JL = 1,ISEDIM + ZRHODREF(JL) = PRHODREF(I1(JL),I2(JL),I3(JL)) + END DO +! + ALLOCATE(ZZW1(ISEDIM)) + ALLOCATE(ZZW2(ISEDIM)) + ALLOCATE(ZZW3(ISEDIM)) +! +! +!------------------------------------------------------------------------------- +! +! +! 2. Cloud droplets sedimentation +! ------------------------------- +! +! + IF( OSEDC .AND. MAXVAL(PRCS(:,:,:))>ZRTMIN(2) ) THEN + ZZW1(:) = 0.0 + ZZW2(:) = 0.0 + ZZW3(:) = 0.0 + ALLOCATE(ZRCS(ISEDIM)) + ALLOCATE(ZCCS(ISEDIM)) + ALLOCATE(ZRCT(ISEDIM)) + ALLOCATE(ZCCT(ISEDIM)) + ALLOCATE(ZTCC(ISEDIM)) + ALLOCATE(ZLBDC(ISEDIM)) + DO JL = 1,ISEDIM + ZRCS(JL) = PRCS(I1(JL),I2(JL),I3(JL)) + ZCCS(JL) = PCCS(I1(JL),I2(JL),I3(JL)) + ZRCT(JL) = PRCT(I1(JL),I2(JL),I3(JL)) + ZCCT(JL) = PCCT(I1(JL),I2(JL),I3(JL)) + ZTCC(JL) = ZCC (I1(JL),I2(JL),I3(JL)) + END DO + ZLBDC(:) = 1.E15 + WHERE (ZRCS(:)>XRTMIN(2) .AND. ZCCS(:)>XCTMIN(2)) + ZLBDC(:) = ( XLBC*ZCCS(:) / ZRCS(:) )**XLBEXC + ZZW3(:) = ZRHODREF(:)**(-XCEXVT) * ZLBDC(:)**(-XDC) + ZZW1(:) = ZTCC(:) * XFSEDRC * ZRCS(:) * ZZW3(:) * ZRHODREF(:) + ZZW2(:) = ZTCC(:) * XFSEDCC * ZCCS(:) * ZZW3(:) * ZRHODREF(:) + END WHERE + ZWSEDR(:,:,:) = UNPACK( ZZW1(:),MASK=GSEDIM(:,:,:),FIELD=0.0 ) + ZWSEDR(:,:,IKB:IKE) = MIN( ZWSEDR(:,:,IKB:IKE), PRCS(:,:,IKB:IKE) * PRHODREF(:,:,IKB:IKE) / ZW(:,:,IKB:IKE) ) + ZWSEDC(:,:,:) = UNPACK( ZZW2(:),MASK=GSEDIM(:,:,:),FIELD=0.0 ) + ZWSEDC(:,:,IKB:IKE) = MIN( ZWSEDC(:,:,IKB:IKE), PCCS(:,:,IKB:IKE) * PRHODREF(:,:,IKB:IKE) / ZW(:,:,IKB:IKE) ) + DO JK = IKB , IKE + PRCS(:,:,JK) = PRCS(:,:,JK) + ZW(:,:,JK)* & + (ZWSEDR(:,:,JK+1)-ZWSEDR(:,:,JK))/PRHODREF(:,:,JK) + PCCS(:,:,JK) = PCCS(:,:,JK) + ZW(:,:,JK)* & + (ZWSEDC(:,:,JK+1)-ZWSEDC(:,:,JK))/PRHODREF(:,:,JK) + END DO + DEALLOCATE(ZRCS) + DEALLOCATE(ZCCS) + DEALLOCATE(ZRCT) + DEALLOCATE(ZCCT) + DEALLOCATE(ZTCC) + DEALLOCATE(ZLBDC) +! + PINPRC(:,:) = PINPRC(:,:) + ZWSEDR(:,:,IKB)/XRHOLW/KSPLITR ! in m/s + ELSE + ZWSEDR(:,:,IKB) = 0.0 + END IF ! OSEDC +! +! +!------------------------------------------------------------------------------- +! +! +! 2. Rain drops sedimentation +! --------------------------- +! +! + IF( MAXVAL(PRRS(:,:,:))>ZRTMIN(3) ) THEN + ZZW1(:) = 0.0 + ZZW2(:) = 0.0 + ZZW3(:) = 0.0 + ALLOCATE(ZRRS(ISEDIM)) + ALLOCATE(ZCRS(ISEDIM)) + ALLOCATE(ZRRT(ISEDIM)) + ALLOCATE(ZCRT(ISEDIM)) + ALLOCATE(ZLBDR(ISEDIM)) + DO JL = 1,ISEDIM + ZRRS(JL) = PRRS(I1(JL),I2(JL),I3(JL)) + ZCRS(JL) = PCRS(I1(JL),I2(JL),I3(JL)) + ZRRT(JL) = PRRT(I1(JL),I2(JL),I3(JL)) + ZCRT(JL) = PCRT(I1(JL),I2(JL),I3(JL)) + END DO + ZLBDR(:) = 1.E10 + WHERE (ZRRS(:)>XRTMIN(3) .AND. ZCRS(:)>XCTMIN(3)) + ZLBDR(:) = ( XLBR*ZCRS(:) / ZRRS(:) )**XLBEXR + ZZW3(:) = ZRHODREF(:)**(-XCEXVT) * (ZLBDR(:)**(-XDR)) + ZZW1(:) = XFSEDRR * ZRRS(:) * ZZW3(:) * ZRHODREF(:) + ZZW2(:) = XFSEDCR * ZCRS(:) * ZZW3(:) * ZRHODREF(:) + END WHERE + ZWSEDR(:,:,:) = UNPACK( ZZW1(:),MASK=GSEDIM(:,:,:),FIELD=0.0 ) + ZWSEDR(:,:,IKB:IKE) = MIN( ZWSEDR(:,:,IKB:IKE), PRRS(:,:,IKB:IKE) * PRHODREF(:,:,IKB:IKE) / ZW(:,:,IKB:IKE) ) + ZWSEDC(:,:,:) = UNPACK( ZZW2(:),MASK=GSEDIM(:,:,:),FIELD=0.0 ) + ZWSEDC(:,:,IKB:IKE) = MIN( ZWSEDC(:,:,IKB:IKE), PCRS(:,:,IKB:IKE) * PRHODREF(:,:,IKB:IKE) / ZW(:,:,IKB:IKE) ) + DO JK = IKB , IKE + PRRS(:,:,JK) = PRRS(:,:,JK) + ZW(:,:,JK)* & + (ZWSEDR(:,:,JK+1)-ZWSEDR(:,:,JK))/PRHODREF(:,:,JK) + PCRS(:,:,JK) = PCRS(:,:,JK) + ZW(:,:,JK)* & + (ZWSEDC(:,:,JK+1)-ZWSEDC(:,:,JK))/PRHODREF(:,:,JK) + END DO + DEALLOCATE(ZRRS) + DEALLOCATE(ZCRS) + DEALLOCATE(ZRRT) + DEALLOCATE(ZCRT) + DEALLOCATE(ZLBDR) + ELSE + ZWSEDR(:,:,IKB) = 0.0 + END IF ! max PRRS > ZRTMIN(3) +! + PINPRR(:,:) = PINPRR(:,:) + ZWSEDR(:,:,IKB)/XRHOLW/KSPLITR ! in m/s + PINPRR3D(:,:,:) = PINPRR3D(:,:,:) + ZWSEDR(:,:,:)/XRHOLW/KSPLITR ! in m/s +! + DEALLOCATE(ZRHODREF) + DEALLOCATE(ZZW1) + DEALLOCATE(ZZW2) + DEALLOCATE(ZZW3) + IF( JN==KSPLITR ) THEN + IF( OSEDC ) THEN + PRCS(:,:,:) = PRCS(:,:,:) / PTSTEP + PCCS(:,:,:) = PCCS(:,:,:) / PTSTEP + END IF + PRRS(:,:,:) = PRRS(:,:,:) / PTSTEP + PCRS(:,:,:) = PCRS(:,:,:) / PTSTEP + END IF + END IF ! ISEDIM +END DO ! KSPLITR +! +!++cb++ +DEALLOCATE(ZRTMIN) +DEALLOCATE(ZCTMIN) +!--cb-- + +! +!------------------------------------------------------------------------------- +! +END SUBROUTINE LIMA_WARM_SEDIMENTATION diff --git a/src/MNH/modd_budget.f90 b/src/MNH/modd_budget.f90 index 5bacbfe59305b7693332e42880edec59d0818d2d..9f5a538bc6620a64fca482f1c91b93ac59988dcd 100644 --- a/src/MNH/modd_budget.f90 +++ b/src/MNH/modd_budget.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 1995-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. @@ -16,7 +16,7 @@ !! !!** IMPLICIT ARGUMENTS !! ------------------ -!! MODD_PARAMETERS: JPBUMAX, JPBUPROCMAX, NMNHNAMELGTMAX +!! MODD_PARAMETERS: JPBUMAX, JPBUPROCMAX,NMNHNAMELGTMAX !! !! REFERENCE !! --------- @@ -39,13 +39,14 @@ !! C. Barthe 19/11/09 add budget terms for electricity !! C.Lac 04/2016 negative contribution to the budget splitted between advection, turbulence and microphysics for KHKO/C2R2 !! C. Barthe /16 add budget terms for LIMA -!! C. LAc 10/2016 add droplets deposition +!! C. Lac 10/2016 add droplets deposition !! Philippe Wautelet: 05/2016-04/2018: new data structures and calls for I/O + !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS ! ------------ -USE MODD_PARAMETERS, ONLY :JPBUMAX, JPBUPROMAX, NMNHNAMELGTMAX +USE MODD_PARAMETERS, ONLY :JPBUMAX, JPBUPROMAX,NMNHNAMELGTMAX ! IMPLICIT NONE ! @@ -282,6 +283,7 @@ INTEGER, SAVE :: NHONHTH ! Haze Homogeneous Nucleation C3R5 INTEGER, SAVE :: NHONCTH ! droplet homogeneous nucleation C3R5 INTEGER, SAVE :: NHONRTH ! drop homogeneous nucleation C3R5 INTEGER, SAVE :: NCEDSTH ! adjustment +INTEGER, SAVE :: NSEDITH ! Temperature transport by hydrometeors sedimentation ! ! Allowed processes for the budget of RTKE (kinetic energy) ! @@ -372,6 +374,9 @@ INTEGER, SAVE :: NHINCRC ! Heterogeneous Nucleation by Contact C3R5 INTEGER, SAVE :: NHONCRC ! droplet homogeneous nucleation C3R5 INTEGER, SAVE :: NCEDSRC ! adjustment C3R5 INTEGER, SAVE :: NREVARC ! evaporation of rain drops +INTEGER, SAVE :: NCORRRC ! rain <-> cloud transfer at the beginning of LIMA +INTEGER, SAVE :: NR2C1RC ! rain -> cloud change after sedimentation in LIMA +INTEGER, SAVE :: NCVRCRC ! rain -> cloud change after other microphysical processes in LIMA ! ! Allowed processes for the budget of moist variable RRR (rain water) ! @@ -399,6 +404,9 @@ INTEGER, SAVE :: NGMLTRR ! Graupel MeLTing ICE3 INTEGER, SAVE :: NWETHRR ! wet growth of hail ICE4 INTEGER, SAVE :: NHMLTRR ! melting of hail ICE4 INTEGER, SAVE :: NHONRRR ! drop homogeneous nucleation C3R5 +INTEGER, SAVE :: NCORRRR ! rain <-> cloud transfer at the beginning of LIMA +INTEGER, SAVE :: NR2C1RR ! rain -> cloud change after sedimentation in LIMA +INTEGER, SAVE :: NCVRCRR ! rain -> cloud change after other microphysical processes in LIMA ! ! Allowed processes for the budget of moist variable RRI (ice) ! @@ -437,6 +445,7 @@ INTEGER, SAVE :: NCNVSRI ! Conversion of pristine ice to r_s C3R5 INTEGER, SAVE :: NHMSRI ! Hallett-Mossop ice multiplication process due to snow riming C3R5 INTEGER, SAVE :: NHMGRI ! Hallett-Mossop ice multiplication process due to graupel riming C3R5 INTEGER, SAVE :: NCEDSRI ! adjustement C3R5 +INTEGER, SAVE :: NCORRRI ! ice <-> snow transfer at the beginning of LIMA ! ! Allowed processes for the budget of moist variable RRS (snow) ! @@ -464,6 +473,7 @@ INTEGER, SAVE :: NWETHRS ! wet growth of hail ICE4 INTEGER, SAVE :: NCNVIRS ! Conversion of snow to r_i C3R5 INTEGER, SAVE :: NCNVSRS ! Conversion of pristine ice to r_s C3R5 INTEGER, SAVE :: NHMSRS ! Hallett-Mossop ice multiplication process due to snow riming C3R5 +INTEGER, SAVE :: NCORRRS ! ice <-> snow transfer at the beginning of LIMA ! ! Allowed processes for the budget of moist variable RRG (graupel) ! diff --git a/src/MNH/modd_param_lima.f90 b/src/MNH/modd_param_lima.f90 index 6c90b2dfa50ce24ece881fc833b20c0f6b8fec39..6245699483a7465fafd690f360a99197229a0ef6 100644 --- a/src/MNH/modd_param_lima.f90 +++ b/src/MNH/modd_param_lima.f90 @@ -35,6 +35,12 @@ IMPLICIT NONE ! LOGICAL, SAVE :: LLIMA_DIAG ! Compute diagnostics for concentration /m3 ! +LOGICAL, SAVE :: LPTSPLIT ! activate time-splitting technique by S. Riette +LOGICAL, SAVE :: LFEEDBACKT ! recompute tendencies if T changes sign +INTEGER, SAVE :: NMAXITER ! maximum number of iterations +REAL, SAVE :: XMRSTEP ! maximum change in mixing ratio allowed before recomputing tedencies +REAL, SAVE :: XTSTEP_TS ! maximum time for the sub-time-step +! !* 1. COLD SCHEME ! ----------- ! @@ -50,22 +56,22 @@ LOGICAL, SAVE :: LMEYERS ! TRUE to use Meyers nucleation ! ! 1.2 IFN initialisation ! -INTEGER, SAVE :: NMOD_IFN ! Number of IFN modes +INTEGER, SAVE :: NMOD_IFN ! Number of IFN modes REAL, DIMENSION(JPLIMAIFNMAX), SAVE :: XIFN_CONC ! Ref. concentration of IFN(#/L) -LOGICAL, SAVE :: LIFN_HOM ! True for z-homogeneous IFN concentrations -CHARACTER(LEN=8), SAVE :: CIFN_SPECIES ! Internal mixing species definitions -CHARACTER(LEN=8), SAVE :: CINT_MIXING ! Internal mixing type selection (pure DM1 ...) -INTEGER, SAVE :: NMOD_IMM ! Number of CCN modes acting by immersion -INTEGER, SAVE :: NIND_SPECIE ! CCN acting by immersion are considered pure - ! IFN of either DM = 1, BC = 2 or O = 3 -INTEGER, DIMENSION(:), SAVE, ALLOCATABLE :: NIMM ! Link between CCN and IMM modes +LOGICAL, SAVE :: LIFN_HOM ! True for z-homogeneous IFN concentrations +CHARACTER(LEN=8), SAVE :: CIFN_SPECIES ! Internal mixing species definitions +CHARACTER(LEN=8), SAVE :: CINT_MIXING ! Internal mixing type selection (pure DM1 ...) +INTEGER, SAVE :: NMOD_IMM ! Number of CCN modes acting by immersion +INTEGER, SAVE :: NIND_SPECIE ! CCN acting by immersion are considered pure + ! IFN of either DM = 1, BC = 2 or O = 3 +INTEGER, DIMENSION(:), SAVE, ALLOCATABLE :: NIMM ! Link between CCN and IMM modes INTEGER, DIMENSION(:), SAVE, ALLOCATABLE :: NINDICE_CCN_IMM ! ?????????? -INTEGER, SAVE :: NSPECIE ! Internal mixing number of species -REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XMDIAM_IFN ! Mean diameter of IFN modes -REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XSIGMA_IFN ! Sigma of IFN modes -REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XRHO_IFN ! Density of IFN modes -REAL, DIMENSION(:,:), SAVE, ALLOCATABLE :: XFRAC ! Composition of each IFN mode -REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XFRAC_REF ! AP compostion in Phillips 08 +INTEGER, SAVE :: NSPECIE ! Internal mixing number of species +REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XMDIAM_IFN ! Mean diameter of IFN modes +REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XSIGMA_IFN ! Sigma of IFN modes +REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XRHO_IFN ! Density of IFN modes +REAL, DIMENSION(:,:), SAVE, ALLOCATABLE :: XFRAC ! Composition of each IFN mode +REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XFRAC_REF ! AP compostion in Phillips 08 ! ! 1.3 Ice characteristics ! @@ -119,26 +125,27 @@ LOGICAL, SAVE :: LBOUND ! TRUE to enable the continuously replenishing ! aerosol concentrations through the open ! lateral boundaries -> boundaries.f90 LOGICAL, SAVE :: LDEPOC ! Deposition of rc at 1st level above ground +LOGICAL, SAVE :: LACTTKE ! TRUE to take into account TKE in W for activation ! ! 2.2 CCN initialisation ! -INTEGER, SAVE :: NMOD_CCN ! Number of CCN modes -REAL, DIMENSION(JPLIMACCNMAX), SAVE :: XCCN_CONC ! CCN conc. (#/cm3) -LOGICAL, SAVE :: LCCN_HOM ! True for z-homogeneous CCN concentrations -CHARACTER(LEN=8),SAVE :: CCCN_MODES ! CCN modes characteristics (Jungfraujoch ...) -REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XR_MEAN_CCN, & ! Mean radius of CCN modes - XLOGSIG_CCN, & ! Log of geometric dispersion of the CCN modes - XRHO_CCN ! Density of the CCN modes -REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XKHEN_MULTI, & ! Parameters defining the CCN activation - XMUHEN_MULTI, & ! spectra for a multimodal aerosol distribution - XBETAHEN_MULTI ! -REAL, DIMENSION(:,:,:) ,SAVE, ALLOCATABLE :: XCONC_CCN_TOT !* Total aerosol number concentration -REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XLIMIT_FACTOR !* compute CHEN ???????????? +INTEGER, SAVE :: NMOD_CCN ! Number of CCN modes +REAL, DIMENSION(JPLIMACCNMAX), SAVE :: XCCN_CONC ! CCN conc. (#/cm3) +LOGICAL, SAVE :: LCCN_HOM ! True for z-homogeneous CCN concentrations +CHARACTER(LEN=8),SAVE :: CCCN_MODES ! CCN modes characteristics (Jungfraujoch ...) +REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XR_MEAN_CCN, & ! Mean radius of CCN modes + XLOGSIG_CCN, & ! Log of geometric dispersion of the CCN modes + XRHO_CCN ! Density of the CCN modes +REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XKHEN_MULTI, & ! Parameters defining the CCN activation + XMUHEN_MULTI, & ! spectra for a multimodal aerosol distribution + XBETAHEN_MULTI ! +REAL, DIMENSION(:,:,:) ,SAVE, ALLOCATABLE :: XCONC_CCN_TOT ! Total aerosol number concentration +REAL, DIMENSION(:), SAVE, ALLOCATABLE :: XLIMIT_FACTOR ! compute CHEN ???????????? ! ! 2.3 Water particles characteristics ! -REAL,SAVE :: XALPHAR,XNUR, & ! Raindrop distribution parameters - XALPHAC,XNUC ! Cloud droplet distribution parameters +REAL,SAVE :: XALPHAR,XNUR, & ! Raindrop distribution parameters + XALPHAC,XNUC ! Cloud droplet distribution parameters ! ! 2.4 CCN activation ! @@ -181,12 +188,22 @@ REAL, SAVE :: XMFPA0 = 6.6E-08 ![m] Mean Free Path of Air under standar ! REAL, SAVE :: XVISCW = 1.0E-3 ![Pa.s] water viscosity at 20°C ! Correction -!REAL, SAVE :: XRHO00 = 1.292 !rho on the floor [Kg/m**3] -REAL, SAVE :: XRHO00 = 1.2041 !rho at P=1013.25 and T=20°C +!REAL, SAVE :: XRHO00 = 1.292 !rho on the floor [Kg/m**3] +REAL, SAVE :: XRHO00 = 1.2041 !rho at P=1013.25 and T=20°C ! -REAL,SAVE :: XCEXVT ! air density fall speed correction +REAL,SAVE :: XCEXVT ! air density fall speed correction ! REAL,DIMENSION(:),SAVE,ALLOCATABLE :: XRTMIN ! Min values of the mixing ratios REAL,DIMENSION(:),SAVE,ALLOCATABLE :: XCTMIN ! Min values of the drop concentrations ! +! +! Sedimentation variables +! +INTEGER,DIMENSION(7),SAVE :: NSPLITSED +REAL,DIMENSION(7),SAVE :: XLB +REAL,DIMENSION(7),SAVE :: XLBEX +REAL,DIMENSION(7),SAVE :: XD +REAL,DIMENSION(7),SAVE :: XFSEDR +REAL,DIMENSION(7),SAVE :: XFSEDC +! END MODULE MODD_PARAM_LIMA diff --git a/src/MNH/modeln.f90 b/src/MNH/modeln.f90 index cb56e15d0c44b5aa8d0164dca8e787ecfc676723..6bdd443665f0b8c65f632afd56f6d94b61cd913c 100644 --- a/src/MNH/modeln.f90 +++ b/src/MNH/modeln.f90 @@ -308,7 +308,7 @@ USE MODD_PARAM_ICE, ONLY: LWARM,LSEDIC,LCONVHG,LDEPOSC USE MODD_PARAM_LIMA, ONLY: MSEDC => LSEDC, MWARM => LWARM, MRAIN => LRAIN, LACTI, & MACTIT => LACTIT, LSCAV, NMOD_CCN, LCOLD, & MSEDI => LSEDI, MHHONI => LHHONI, NMOD_IFN, LHAIL, & - XRTMIN_LIMA=>XRTMIN + XRTMIN_LIMA=>XRTMIN, MACTTKE=>LACTTKE USE MODD_BLOWSNOW_n USE MODD_BLOWSNOW USE MODD_PARAM_MFSHALL_n @@ -1725,7 +1725,7 @@ IF (CCLOUD /= 'NONE' .AND. CELEC == 'NONE') THEN ZWT_ACT_NUC(:,:,:) = XWT(:,:,:) END IF IF (CTURB /= 'NONE' ) THEN - IF (LACTTKE) THEN + IF ( ((CCLOUD=='C2R2'.OR.CCLOUD=='KHKO').AND.LACTTKE) .OR. (CCLOUD=='LIMA'.AND.MACTTKE) ) THEN ZWT_ACT_NUC(:,:,:) = ZWT_ACT_NUC(:,:,:) + (2./3. * XTKET(:,:,:))**0.5 ELSE ZWT_ACT_NUC(:,:,:) = ZWT_ACT_NUC(:,:,:) diff --git a/src/MNH/modn_budget.f90 b/src/MNH/modn_budget.f90 index 2ec4a163149a0df0af291f748f8e668adf629c32..d7b25da377d7adae67f00b28406fecf1aa4209a5 100644 --- a/src/MNH/modn_budget.f90 +++ b/src/MNH/modn_budget.f90 @@ -255,7 +255,7 @@ NAMELIST/NAM_BU_RTH/LBU_RTH, NASSETH, NNESTTH, NADVTH, NFRCTH, & NSFRTH, NDEPSTH, NDEPGTH,NRIMTH, NACCTH, NCFRZTH, NWETGTH, & NDRYGTH, NGMLTTH, NIMLTTH, NBERFITH, NCDEPITH, NWETHTH, NHMLTTH, & NMAFLTH, NNETURTH, NNEADVTH, NNECONTH, & - NHINDTH, NHINCTH, NHONHTH, NHONCTH, NHONRTH, NCEDSTH + NHINDTH, NHINCTH, NHONHTH, NHONCTH, NHONRTH, NCEDSTH, NSEDITH ! NAMELIST/NAM_BU_RTKE/LBU_RTKE, NASSETKE, NADVTKE, & NFRCTKE, NDIFTKE, NRELTKE, NDRAGTKE, & @@ -271,25 +271,25 @@ NAMELIST/NAM_BU_RRC/LBU_RRC, NASSERC, NNESTRC, NADVRC, NFRCRC, & NAUTORC, NCONDRC, NHONRC, NRIMRC, NWETGRC, NDRYGRC, NIMLTRC, & NBERFIRC, NCDEPIRC, NHENURC, NSEDIRC, NWETHRC, NNETURRC, & NNEADVRC,NNECONRC, NHINCRC, NHONCRC, NCEDSRC, NREVARC,& - NDEPORC,NDEPOTRRC + NDEPORC,NDEPOTRRC, NCORRRC, NR2C1RC, NCVRCRC ! NAMELIST/NAM_BU_RRR/LBU_RRR, NASSERR, NNESTRR, NADVRR, NFRCRR, & NDIFRR, NRELRR, NNEGARR, NACCRRR, NAUTORR, NREVARR, NSEDIRR, & NSFRRR, NACCRR, NCFRZRR, NWETGRR, NDRYGRR, NGMLTRR, NWETHRR, & NHMLTRR, & - NHONRRR + NHONRRR, NCORRRR, NR2C1RR, NCVRCRR ! NAMELIST/NAM_BU_RRI/LBU_RRI, NASSERI, NNESTRI, NADVRI, NFRCRI, & NDIFRI, NRELRI, NDCONVRI, NHTURBRI, NVTURBRI, NNEGARI, NSEDIRI, & NHENURI, NHONRI, NAGGSRI, NAUTSRI, NCFRZRI, NWETGRI, NDRYGRI, & NIMLTRI, NBERFIRI, NCDEPIRI, NWETHRI, & NHINDRI, NHINCRI, NHONHRI, NHONCRI, NCNVIRI, NCNVSRI, & - NHMSRI, NHMGRI, NCEDSRI + NHMSRI, NHMGRI, NCEDSRI, NCORRRI ! NAMELIST/NAM_BU_RRS/LBU_RRS, NASSERS, NNESTRS, NADVRS, NFRCRS, & NDIFRS, NRELRS, NNEGARS, NSEDIRS, NDEPSRS, NAGGSRS, NAUTSRS, & NRIMRS, NACCRS, NCMELRS, NWETGRS, NDRYGRS, NWETHRS, & - NCNVIRS, NCNVSRS, NHMSRS + NCNVIRS, NCNVSRS, NHMSRS, NCORRRS ! NAMELIST/NAM_BU_RRG/LBU_RRG, NASSERG, NNESTRG, NADVRG, NFRCRG, & NDIFRG, NRELRG, NNEGARG, NSEDIRG, NSFRRG, NDEPGRG, NRIMRG, NACCRG, & diff --git a/src/MNH/modn_param_lima.f90 b/src/MNH/modn_param_lima.f90 index f876e45cbeaf920726b2a4f82b1c8a89eb4a670d..0b3c41d5e4495c8839490c3f29dea7521ef67ef9 100644 --- a/src/MNH/modn_param_lima.f90 +++ b/src/MNH/modn_param_lima.f90 @@ -13,17 +13,18 @@ IMPLICIT NONE ! ! NAMELIST/NAM_PARAM_LIMA/LCOLD, LNUCL, LSEDI, LSNOW, LHAIL, LHHONI, LMEYERS,& - NMOD_IFN, XIFN_CONC, LIFN_HOM, & - CIFN_SPECIES, CINT_MIXING, NMOD_IMM, NIND_SPECIE, & + NMOD_IFN, XIFN_CONC, LIFN_HOM, & + CIFN_SPECIES, CINT_MIXING, NMOD_IMM, NIND_SPECIE, & CPRISTINE_ICE_LIMA, CHEVRIMED_ICE_LIMA, & XALPHAI, XNUI, XALPHAS, XNUS, XALPHAG, XNUG, & XFACTNUC_DEP, XFACTNUC_CON, NPHILLIPS, & ! LWARM, LACTI, LRAIN, LSEDC, LACTIT, LBOUND, & - NMOD_CCN, XCCN_CONC, & - LCCN_HOM, CCCN_MODES, HINI_CCN, HTYPE_CCN, & + NMOD_CCN, XCCN_CONC, & + LCCN_HOM, CCCN_MODES, HINI_CCN, HTYPE_CCN, & XALPHAC, XNUC, XALPHAR, XNUR, & XFSOLUB_CCN, XACTEMP_CCN, XAERDIFF, XAERHEIGHT, & - LSCAV, LAERO_MASS, LDEPOC, XVDEPOC + LSCAV, LAERO_MASS, LDEPOC, XVDEPOC, LACTTKE, & + LPTSPLIT, LFEEDBACKT, NMAXITER, XMRSTEP, XTSTEP_TS ! END MODULE MODN_PARAM_LIMA diff --git a/src/MNH/resolved_cloud.f90 b/src/MNH/resolved_cloud.f90 index f1f303e010a9f7ff0db38f0c68162ccfea719467..9cb969090c0dbe4fa1aa916752c4901426c1b486 100644 --- a/src/MNH/resolved_cloud.f90 +++ b/src/MNH/resolved_cloud.f90 @@ -1,7 +1,8 @@ -!MNH_LIC Copyright 1994-2018 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. +! $Source: /srv/cvsroot/MNH-VX-Y-Z/src/MNH/resolved_cloud.f90,v $ !----------------------------------------------------------------- ! ########################## MODULE MODI_RESOLVED_CLOUD @@ -9,7 +10,7 @@ INTERFACE SUBROUTINE RESOLVED_CLOUD ( HCLOUD, HACTCCN, HSCONV, HMF_CLOUD, & KRR, KSPLITR, KSPLITG, KMI, KTCOUNT, & - HLBCX, HLBCY, TPFILE, HRAD, HTURBDIM, & + HLBCX, HLBCY, TPFILE, HRAD, HTURBDIM, & OCLOSE_OUT, OSUBG_COND, OSIGMAS, HSUBG_AUCV, & PTSTEP, PZZ, PRHODJ, PRHODREF, PEXNREF, & PPABST, PTHT, PRT, PSIGS, PSIGQSAT, PMFCONV, & @@ -18,8 +19,8 @@ INTERFACE PCIT, OSEDIC, OACTIT, OSEDC, OSEDI, & ORAIN, OWARM, OHHONI, OCONVHG, & PCF_MF,PRC_MF, PRI_MF, & - PINPRC,PINPRR,PINPRR3D, PEVAP3D, & - PINPRS,PINPRG,PINPRH, & + PINPRC,PINPRR,PINPRR3D, PEVAP3D, & + PINPRS,PINPRG,PINPRH, & PSOLORG,PMI, & PINDEP, PSUPSAT, PNACT, PNPRO,PSSPRO, & PSEA,PTOWN ) @@ -133,7 +134,7 @@ END MODULE MODI_RESOLVED_CLOUD ! ########################################################################## SUBROUTINE RESOLVED_CLOUD ( HCLOUD, HACTCCN, HSCONV, HMF_CLOUD, & KRR, KSPLITR, KSPLITG, KMI, KTCOUNT, & - HLBCX, HLBCY, TPFILE, HRAD, HTURBDIM, & + HLBCX, HLBCY,TPFILE, HRAD, HTURBDIM, & OCLOSE_OUT, OSUBG_COND, OSIGMAS, HSUBG_AUCV, & PTSTEP, PZZ, PRHODJ, PRHODREF, PEXNREF, & PPABST, PTHT, PRT, PSIGS, PSIGQSAT, PMFCONV, & @@ -142,8 +143,8 @@ END MODULE MODI_RESOLVED_CLOUD PCIT, OSEDIC, OACTIT, OSEDC, OSEDI, & ORAIN, OWARM, OHHONI, OCONVHG, & PCF_MF,PRC_MF, PRI_MF, & - PINPRC,PINPRR,PINPRR3D, PEVAP3D, & - PINPRS,PINPRG,PINPRH, & + PINPRC,PINPRR,PINPRR3D, PEVAP3D, & + PINPRS,PINPRG,PINPRH, & PSOLORG,PMI, & PINDEP, PSUPSAT, PNACT, PNPRO,PSSPRO, & PSEA,PTOWN ) @@ -272,7 +273,8 @@ USE MODD_CH_AEROSOL , ONLY : LORILAM USE MODD_DUST , ONLY : LDUST USE MODD_SALT , ONLY : LSALT ! -USE MODD_PARAM_LIMA, ONLY : LCOLD, XCONC_CCN_TOT, NMOD_CCN, NMOD_IFN, NMOD_IMM +USE MODD_PARAM_LIMA, ONLY : LCOLD, XCONC_CCN_TOT, NMOD_CCN, NMOD_IFN, NMOD_IMM, LPTSPLIT, & + YRTMIN=>XRTMIN, YCTMIN=>XCTMIN ! USE MODI_SLOW_TERMS USE MODI_FAST_TERMS @@ -287,6 +289,7 @@ USE MODI_SHUMAN USE MODI_BUDGET USE MODI_GET_HALO ! +USE MODI_LIMA USE MODI_LIMA_WARM USE MODI_LIMA_COLD USE MODI_LIMA_MIXED @@ -433,6 +436,8 @@ REAL, DIMENSION(:,:,:,:), ALLOCATABLE :: ZSVS ! scalar tendency for microphysi ! INTEGER :: JMOD, JMOD_IFN ! +! BVIE work array waiting for PINPRI +REAL, DIMENSION(SIZE(PZZ,1),SIZE(PZZ,2)):: ZINPRI !------------------------------------------------------------------------------ ! !* 1. PRELIMINARY COMPUTATIONS @@ -681,60 +686,39 @@ SELECT CASE ( HCLOUD ) PSVS(:,:,:,:) = MAX( 0.0,PSVS(:,:,:,:) ) ! CASE('LIMA') -! Correction of CCN concentrations where rc<0 or Nc<0 - IF (OWARM) THEN - DO JMOD = 1, NMOD_CCN - WHERE (PRS(:,:,:,2) < 0. .OR. ZSVS(:,:,:,NSV_LIMA_NC) < 0.) ! rc or Nc < 0. - ZSVS(:,:,:,NSV_LIMA_CCN_FREE+JMOD-1) = & - ZSVS(:,:,:,NSV_LIMA_CCN_FREE+JMOD-1) + & ! NfreeCN = NfreeCN+ - ZSVS(:,:,:,NSV_LIMA_CCN_ACTI+JMOD-1) ! N_activated_CCN - ZSVS(:,:,:,NSV_LIMA_CCN_ACTI+JMOD-1) = 0.0 ! N_activated_CCN=0 - END WHERE - ENDDO - END IF -! Correction where rc<0 - IF (OWARM) THEN - WHERE (PRS(:,:,:,2) < 0. .OR. ZSVS(:,:,:,NSV_LIMA_NC) < 0.) - PRS(:,:,:,1) = PRS(:,:,:,1) + PRS(:,:,:,2) - PTHS(:,:,:) = PTHS(:,:,:) - PRS(:,:,:,2) * ZLV(:,:,:) / & - ZCPH(:,:,:) / ZEXN(:,:,:) - PRS(:,:,:,2) = 0.0 - ZSVS(:,:,:,NSV_LIMA_NC) = 0.0 - END WHERE - END IF -! Correction where rr<0 - IF (OWARM .AND. ORAIN) THEN - WHERE (PRS(:,:,:,3) < 0. .OR. ZSVS(:,:,:,NSV_LIMA_NR) < 0.) - PRS(:,:,:,1) = PRS(:,:,:,1) + PRS(:,:,:,3) - PTHS(:,:,:) = PTHS(:,:,:) - PRS(:,:,:,3) * ZLV(:,:,:) / & - ZCPH(:,:,:) / ZEXN(:,:,:) - PRS(:,:,:,3) = 0.0 - ZSVS(:,:,:,NSV_LIMA_NR) = 0.0 - END WHERE - END IF -! Correction of IFN concentrations where ri<0 or Ni<0 - IF (LCOLD) THEN - DO JMOD = 1, NMOD_IFN - WHERE (PRS(:,:,:,4) < 0. .OR. ZSVS(:,:,:,NSV_LIMA_NI) < 0.) ! ri or Ni < 0. - ZSVS(:,:,:,NSV_LIMA_IFN_FREE+JMOD-1) = & - ZSVS(:,:,:,NSV_LIMA_IFN_FREE+JMOD-1) + & - ZSVS(:,:,:,NSV_LIMA_IFN_NUCL+JMOD-1) ! N_IF =N_IF+N_IN - ZSVS(:,:,:,NSV_LIMA_IFN_NUCL+JMOD-1) = 0.0 ! N_IN =0. - END WHERE - ENDDO - END IF -! Correction where ri<0 - IF (LCOLD) THEN - WHERE (PRS(:,:,:,4) < 0. .OR. ZSVS(:,:,:,NSV_LIMA_NI) < 0.) - PRS(:,:,:,1) = PRS(:,:,:,1) + PRS(:,:,:,4) - PTHS(:,:,:) = PTHS(:,:,:) - PRS(:,:,:,4) * ZLS(:,:,:) / & - ZCPH(:,:,:) / ZEXN(:,:,:) - PRS(:,:,:,4) = 0.0 - ZSVS(:,:,:,NSV_LIMA_NI) = 0.0 - END WHERE - END IF +! Correction where rc<0 or Nc<0 + IF (OWARM) THEN + WHERE (PRS(:,:,:,2) < YRTMIN(2)/PTSTEP .OR. ZSVS(:,:,:,NSV_LIMA_NC) < YCTMIN(2)/PTSTEP) + PRS(:,:,:,1) = PRS(:,:,:,1) + PRS(:,:,:,2) + PTHS(:,:,:) = PTHS(:,:,:) - PRS(:,:,:,2) * ZLV(:,:,:) / & + ZCPH(:,:,:) / ZEXN(:,:,:) + PRS(:,:,:,2) = 0.0 + ZSVS(:,:,:,NSV_LIMA_NC) = 0.0 + END WHERE + END IF +! Correction where rr<0 or Nr<0 + IF (OWARM .AND. ORAIN) THEN + WHERE (PRS(:,:,:,3) < YRTMIN(3)/PTSTEP .OR. ZSVS(:,:,:,NSV_LIMA_NR) < YCTMIN(3)/PTSTEP) + PRS(:,:,:,1) = PRS(:,:,:,1) + PRS(:,:,:,3) + PTHS(:,:,:) = PTHS(:,:,:) - PRS(:,:,:,3) * ZLV(:,:,:) / & + ZCPH(:,:,:) / ZEXN(:,:,:) + PRS(:,:,:,3) = 0.0 + ZSVS(:,:,:,NSV_LIMA_NR) = 0.0 + END WHERE + END IF +! Correction where ri<0 or Ni<0 + IF (LCOLD) THEN + WHERE (PRS(:,:,:,4) < YRTMIN(4)/PTSTEP .OR. ZSVS(:,:,:,NSV_LIMA_NI) < YCTMIN(4)/PTSTEP) + PRS(:,:,:,1) = PRS(:,:,:,1) + PRS(:,:,:,4) + PTHS(:,:,:) = PTHS(:,:,:) - PRS(:,:,:,4) * ZLS(:,:,:) / & + ZCPH(:,:,:) / ZEXN(:,:,:) + PRS(:,:,:,4) = 0.0 + ZSVS(:,:,:,NSV_LIMA_NI) = 0.0 + END WHERE + END IF ! ZSVS(:,:,:,:) = MAX( 0.0,ZSVS(:,:,:,:) ) + PRS(:,:,:,:) = MAX( 0.0,PRS(:,:,:,:) ) ! END SELECT ! @@ -753,9 +737,9 @@ IF (LBUDGET_RS) CALL BUDGET (PRS(:,:,:,5) * PRHODJ(:,:,:),10,'NEGA_BU_RRS') IF (LBUDGET_RG) CALL BUDGET (PRS(:,:,:,6) * PRHODJ(:,:,:),11,'NEGA_BU_RRG') IF (LBUDGET_RH) CALL BUDGET (PRS(:,:,:,7) * PRHODJ(:,:,:),12,'NEGA_BU_RRH') IF (LBUDGET_SV .AND. (HCLOUD == 'LIMA')) THEN - CALL BUDGET (ZSVS(:,:,:,NSV_LIMA_NC) * PRHODJ(:,:,:),12+NSV_LIMA_NC,'NEGA_BU_RSV') - CALL BUDGET (ZSVS(:,:,:,NSV_LIMA_NR) * PRHODJ(:,:,:),12+NSV_LIMA_NR,'NEGA_BU_RSV') - CALL BUDGET (ZSVS(:,:,:,NSV_LIMA_NI) * PRHODJ(:,:,:),12+NSV_LIMA_NI,'NEGA_BU_RSV') + IF (OWARM) CALL BUDGET (ZSVS(:,:,:,NSV_LIMA_NC) * PRHODJ(:,:,:),12+NSV_LIMA_NC,'NEGA_BU_RSV') + IF (OWARM.AND.ORAIN) CALL BUDGET (ZSVS(:,:,:,NSV_LIMA_NR) * PRHODJ(:,:,:),12+NSV_LIMA_NR,'NEGA_BU_RSV') + IF (LCOLD) CALL BUDGET (ZSVS(:,:,:,NSV_LIMA_NI) * PRHODJ(:,:,:),12+NSV_LIMA_NI,'NEGA_BU_RSV') IF (NMOD_CCN.GE.1) THEN DO JL=1, NMOD_CCN CALL BUDGET ( ZSVS(:,:,:,NSV_LIMA_CCN_FREE+JL-1)* & @@ -813,7 +797,7 @@ SELECT CASE ( HCLOUD ) PZZ, PRHODJ, PRHODREF, PCLDFR, & PTHT, PRT(:,:,:,1), PRT(:,:,:,2), PRT(:,:,:,3), PPABST, & PTHS, PRS(:,:,:,1), PRS(:,:,:,2), PRS(:,:,:,3), & - PINPRR, PINPRR3D, PEVAP3D ) + PINPRR, PINPRR3D, PEVAP3D ) ! !* 5.2 Perform the saturation adjustment ! @@ -955,38 +939,49 @@ SELECT CASE ( HCLOUD ) !* 12.1 Compute the explicit microphysical sources ! CASE ('LIMA') -! - IF (OWARM) CALL LIMA_WARM(OACTIT, OSEDC, ORAIN, KSPLITR, PTSTEP, KMI, & - KRR, PZZ, PRHODJ, & - PRHODREF, PEXNREF, PW_ACT, PPABST, PPABST, & - PTHT, PRCM, & - PTHT, PRT, ZSVT, & - PTHS, PRS, ZSVS, & - PINPRC, PINPRR, PINDEP, PINPRR3D, PEVAP3D ) -! -IF (LCOLD) CALL LIMA_COLD(OSEDI, OHHONI, KSPLITG, PTSTEP, KMI, & - KRR, PZZ, PRHODJ, & - PRHODREF, PEXNREF, PPABST, PW_ACT, & - PTHT, PPABST, & - PTHT, PRT, ZSVT, & - PTHS, PRS, ZSVS, & - PINPRS, PINPRG, PINPRH) -! -IF (OWARM .AND. LCOLD) CALL LIMA_MIXED(OSEDI, OHHONI, KSPLITG, PTSTEP, KMI, & - KRR, PZZ, PRHODJ, & - PRHODREF, PEXNREF, PPABST, PW_ACT, & - PTHT, PPABST, & - PTHT, PRT, ZSVT, & - PTHS, PRS, ZSVS ) -! + ! + IF (LPTSPLIT) THEN + CALL LIMA (PTSTEP, TPFILE, OCLOSE_OUT, & + PRHODREF, PEXNREF, PZZ, & + PRHODJ, PPABSM, PPABST, & + NMOD_CCN, NMOD_IFN, NMOD_IMM, & + PTHM, PTHT, PRT, ZSVT, PW_ACT, & + PTHS, PRS, ZSVS, & + PINPRC, PINDEP, PINPRR, ZINPRI, PINPRS, PINPRG, PINPRH, & + PEVAP3D ) + ELSE + + IF (OWARM) CALL LIMA_WARM(OACTIT, OSEDC, ORAIN, KSPLITR, PTSTEP, KMI, & + TPFILE, OCLOSE_OUT, KRR, PZZ, PRHODJ,& + PRHODREF, PEXNREF, PW_ACT, PPABSM, PPABST, & + PTHM, PRCM, & + PTHT, PRT, ZSVT, & + PTHS, PRS, ZSVS, & + PINPRC, PINPRR, PINDEP, PINPRR3D, PEVAP3D ) +! + IF (LCOLD) CALL LIMA_COLD(OSEDI, OHHONI, KSPLITG, PTSTEP, KMI, & + KRR, PZZ, PRHODJ, & + PRHODREF, PEXNREF, PPABST, PW_ACT, & + PTHM, PPABSM, & + PTHT, PRT, ZSVT, & + PTHS, PRS, ZSVS, & + PINPRS, PINPRG, PINPRH) +! + IF (OWARM .AND. LCOLD) CALL LIMA_MIXED(OSEDI, OHHONI, KSPLITG, PTSTEP, KMI, & + KRR, PZZ, PRHODJ, & + PRHODREF, PEXNREF, PPABST, PW_ACT, & + PTHM, PPABSM, & + PTHT, PRT, ZSVT, & + PTHS, PRS, ZSVS ) + ENDIF ! !* 12.2 Perform the saturation adjustment ! -CALL LIMA_ADJUST(KRR, KMI, TPFILE, HRAD, & - HTURBDIM, OCLOSE_OUT, OSUBG_COND, PTSTEP, & - PRHODREF, PRHODJ, PEXNREF, PPABST, PSIGS, PPABST, & - PRT, PRS, ZSVT, ZSVS, & - PTHS, PSRCS, PCLDFR ) + CALL LIMA_ADJUST(KRR, KMI, TPFILE, HRAD, & + HTURBDIM, OCLOSE_OUT, OSUBG_COND, PTSTEP, & + PRHODREF, PRHODJ, PEXNREF, PPABST, PSIGS, PPABST, & + PRT, PRS, ZSVT, ZSVS, & + PTHS, PSRCS, PCLDFR ) ! END SELECT ! diff --git a/src/MNH/set_conc_lima.f90 b/src/MNH/set_conc_lima.f90 index 5fdfc4247633a55ef49fffe68cd21f4915eff0c3..c111ac6434d0a331477bd5c881a309a47eeb1c72 100644 --- a/src/MNH/set_conc_lima.f90 +++ b/src/MNH/set_conc_lima.f90 @@ -3,7 +3,7 @@ !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. !----------------------------------------------------------------- -! ####################################### +!####################################### MODULE MODI_SET_CONC_LIMA ! ####################################### ! @@ -72,11 +72,12 @@ END MODULE MODI_SET_CONC_LIMA !! ------ !! J.-P. Pinty * Laboratoire d'Aerologie* !! P. Jabouille * CNRM/GMME * +!! B. Vié * CNRM/GMME * !! !! MODIFICATIONS !! ------------- !! Original 15/11/00 -!! 2014 G.Delautier : remplace MODD_RAIN_C2R2_PARAM par MODD_RAIN_C2R2_KHKO_PARAM +!! 2014 G.Delautier : remplace MODD_RAIN_C2R2_PARAM par MODD_RAIN_C2R2_KHKO_PARAM * !! Philippe Wautelet: 05/2016-04/2018: new data structures and calls for I/O !! !------------------------------------------------------------------------------- @@ -84,12 +85,13 @@ END MODULE MODI_SET_CONC_LIMA !* 0. DECLARATIONS ! ------------ ! +USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN, LCOLD, LWARM, LRAIN, NMOD_CCN, NMOD_IFN +USE MODD_PARAM_LIMA_COLD, ONLY : XAI, XBI +USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NR, NSV_LIMA_CCN_ACTI, NSV_LIMA_NI, NSV_LIMA_IFN_NUCL USE MODD_CST, ONLY : XPI, XRHOLW, XRHOLI USE MODD_CONF, ONLY : NVERB USE MODD_LUNIT_n, ONLY : TLUOUT -USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NR, NSV_LIMA_CCN_ACTI, NSV_LIMA_NI, NSV_LIMA_IFN_NUCL -USE MODD_PARAM_LIMA, ONLY : XRTMIN, XCTMIN, LCOLD, LWARM, LRAIN -USE MODD_PARAM_LIMA_COLD, ONLY : XAI, XBI + ! USE MODE_FM ! @@ -125,15 +127,23 @@ IF (LWARM) THEN ! droplets ! ZCONCC = 300.E6 ! droplet concentration set at 300 cm-3 - WHERE ( PRT(:,:,:,2) > XRTMIN(2) ) + WHERE ( PRT(:,:,:,2) > 1.E-11 ) PSVT(:,:,:,NSV_LIMA_NC) = ZCONCC - PSVT(:,:,:,NSV_LIMA_CCN_ACTI) = ZCONCC END WHERE - WHERE ( PRT(:,:,:,2) <= XRTMIN(2) ) + WHERE ( PRT(:,:,:,2) <= 1.E-11 ) PRT(:,:,:,2) = 0.0 PSVT(:,:,:,NSV_LIMA_NC) = 0.0 - PSVT(:,:,:,NSV_LIMA_CCN_ACTI) = 0.0 END WHERE + + IF (NMOD_CCN .GE. 1) THEN + WHERE ( PRT(:,:,:,2) > 1.E-11 ) + PSVT(:,:,:,NSV_LIMA_CCN_ACTI) = ZCONCC + END WHERE + WHERE ( PRT(:,:,:,2) <= 1.E-11 ) + PSVT(:,:,:,NSV_LIMA_CCN_ACTI) = 0.0 + END WHERE + END IF + IF( NVERB >= 5 ) THEN WRITE (UNIT=ILUOUT,FMT=*) "!INI_MODEL$n: The droplet concentration has " WRITE (UNIT=ILUOUT,FMT=*) "been roughly initialised" @@ -148,11 +158,11 @@ IF (LWARM .AND. LRAIN) THEN IF (HGETCLOUD == 'INI1') THEN ! init from REVE scheme PSVT(:,:,:,NSV_LIMA_NR) = 0.0 ELSE ! init from KESS, ICE3... - WHERE ( PRT(:,:,:,3) > XRTMIN(3) ) + WHERE ( PRT(:,:,:,3) > 1.E-11 ) PSVT(:,:,:,NSV_LIMA_NR) = MAX( SQRT(SQRT(PRHODREF(:,:,:)*PRT(:,:,:,3) & *ZCONCR)),XCTMIN(3) ) END WHERE - WHERE ( PRT(:,:,:,3) <= XRTMIN(3) ) + WHERE ( PRT(:,:,:,3) <= 1.E-11 ) PRT(:,:,:,3) = 0.0 PSVT(:,:,:,NSV_LIMA_NR) = 0.0 END WHERE @@ -168,20 +178,28 @@ IF (LCOLD) THEN ! ice crystals ! ZCONCI = 100.E3 ! maximum ice concentration set at 100/L - WHERE ( PRT(:,:,:,4) > XRTMIN(4) ) + WHERE ( PRT(:,:,:,4) > 1.E-11 ) ! ! PSVT(:,:,:,NSV_LIMA_NI) = MIN( PRHODREF(:,:,:) / & ! ( XRHOLI * XAI*(10.E-06)**XBI * PRT(:,:,:,4) ), & ! ZCONCI ) ! Correction PSVT(:,:,:,NSV_LIMA_NI) = MIN(PRT(:,:,:,4)/(XAI*(10.E-06)**XBI),ZCONCI ) - PSVT(:,:,:,NSV_LIMA_IFN_NUCL) = PSVT(:,:,:,NSV_LIMA_NI) END WHERE - WHERE ( PRT(:,:,:,4) <= XRTMIN(4) ) + WHERE ( PRT(:,:,:,4) <= 1.E-11 ) PRT(:,:,:,4) = 0.0 PSVT(:,:,:,NSV_LIMA_NI) = 0.0 - PSVT(:,:,:,NSV_LIMA_IFN_NUCL) = 0.0 END WHERE + + IF (NMOD_IFN .GE. 1) THEN + WHERE ( PRT(:,:,:,4) > 1.E-11 ) + PSVT(:,:,:,NSV_LIMA_IFN_NUCL) = PSVT(:,:,:,NSV_LIMA_NI) + END WHERE + WHERE ( PRT(:,:,:,4) <= 1.E-11 ) + PSVT(:,:,:,NSV_LIMA_IFN_NUCL) = 0.0 + END WHERE + END IF + IF( NVERB >= 5 ) THEN WRITE (UNIT=ILUOUT,FMT=*) "!INI_MODEL$n: The cloud ice concentration has " WRITE (UNIT=ILUOUT,FMT=*) "been roughly initialised"